واجهة برمجة تطبيقات DOS

واجهة برمجة تطبيقات DOS هي واجهة برمجة تطبيقات نشأت مع نظام 86-DOS وتُستخدم في أنظمة MS-DOS و PC DOS وغيرها من أنظمة التشغيل المتوافقة مع DOS . يتم استدعاء معظم وظائف واجهة برمجة تطبيقات DOS باستخدام مقاطعة البرنامج 21h ( INT 21h). من خلال استدعاء INT 21h مع رقم وظيفة فرعية في سجل المعالج AH ومعاملات أخرى في سجلات أخرى، يمكن استدعاء خدمات DOS المختلفة. تشمل هذه الخدمات معالجة مدخلات لوحة المفاتيح، وإخراج الفيديو، والوصول إلى ملفات القرص، وتنفيذ البرامج، وتخصيص الذاكرة، والعديد من الأنشطة الأخرى. في أواخر ثمانينيات القرن الماضي، سمحت موسعات DOS ، إلى جانب واجهة وضع الحماية DOS (DPMI)، للبرامج بالعمل في وضع حماية 16 بت أو 32 بت مع الحفاظ على إمكانية الوصول إلى واجهة برمجة تطبيقات DOS.

تاريخ واجهة برمجة تطبيقات نظام التشغيل DOS

صُممت واجهة برمجة تطبيقات DOS الأصلية في نظامي 86-DOS وMS-DOS 1.0 لتكون متوافقة وظيفيًا مع نظام CP/M . وكان الوصول إلى الملفات يتم باستخدام كتل التحكم في الملفات (FCBs). وشهدت واجهة برمجة تطبيقات DOS توسعًا كبيرًا في MS-DOS 2.0 بإضافة العديد من مفاهيم يونكس ، بما في ذلك الوصول إلى الملفات باستخدام مقابض الملفات ، والمجلدات الهرمية ، والتحكم في إدخال/إخراج الأجهزة. [ 1 ] وفي DOS 3.1، أُضيف دعم إعادة توجيه الشبكة . وفي MS-DOS 3.31، جرى تحسين وظائف INT 25h/26h لدعم الأقراص الصلبة التي تزيد سعتها عن 32 ميجابايت. وأضاف MS-DOS 5 دعمًا لاستخدام كتل الذاكرة العليا (UMBs). وبعد MS-DOS 5، ظلت واجهة برمجة تطبيقات DOS دون تغيير في الإصدارات المستقلة اللاحقة من DOS.

واجهة برمجة تطبيقات DOS ونظام التشغيل Windows

في نظام التشغيل ويندوز 9x ، كان نظام DOS يُحمّل نظام الوضع المحمي وواجهة المستخدم الرسومية. وكان الوصول إلى DOS يتم عادةً من خلال جهاز DOS افتراضي (VDM)، ولكن كان من الممكن أيضًا الإقلاع مباشرةً إلى وضع MS-DOS 7.0 الحقيقي دون تحميل ويندوز. تم توسيع واجهة برمجة تطبيقات DOS (DOS API) بدعم مُحسّن للتدويل ودعم أسماء الملفات الطويلة ، مع العلم أن دعم أسماء الملفات الطويلة كان متاحًا فقط في جهاز VDM. مع إصدار ويندوز 95 OSR2، تم تحديث DOS إلى الإصدار 7.1، والذي أضاف دعمًا لنظام الملفات FAT32 ، كما أُضيفت وظائف إلى واجهة برمجة تطبيقات DOS لدعم هذا النظام. يُطبّق كل من ويندوز 98 وويندوز Me أيضًا واجهة برمجة تطبيقات MS-DOS 7.1، مع أن ويندوز Me يُعرّف نفسه على أنه MS-DOS 8.0.

لا تعتمد أنظمة التشغيل Windows NT والأنظمة المبنية عليها (مثل Windows XP و Windows Vista ) على نظام MS-DOS، بل تستخدم آلة افتراضية تُسمى NTVDM للتعامل مع واجهة برمجة تطبيقات DOS. تعمل NTVDM عن طريق تشغيل برنامج DOS في وضع 8086 افتراضي (محاكاة للوضع الحقيقي ضمن الوضع المحمي المتوفر في معالجات 80386 وما فوق). تدعم NTVDM واجهة برمجة تطبيقات DOS 5.0. يستخدم برنامج DOSEMU لنظام Linux نهجًا مشابهًا.

متجهات المقاطعة المستخدمة بواسطة نظام التشغيل DOS

فيما يلي قائمة متجهات المقاطعة التي تستخدمها البرامج لاستدعاء وظائف واجهة برمجة تطبيقات نظام التشغيل DOS.

متجه المقاطعةوصفإصدارملحوظات
20hإنهاء البرنامج1.0+تم تنفيذه في نواة نظام التشغيل DOS
21hواجهة برمجة تطبيقات DOS الرئيسية1.0+تم تنفيذه في نواة نظام التشغيل DOS
22hإنهاء عنوان البرنامج1.0+عنوان المرسل في برنامج الاتصال
23hعنوان معالج Control-C1.0+المعالج الافتراضي موجود في موجه الأوامر (عادةً COMMAND.COM)
24hعنوان معالج الأخطاء الحرجة1.0+المعالج الافتراضي موجود في موجه الأوامر (عادةً COMMAND.COM)
25hقراءة القرص المطلقة1.0+تم تنفيذه في نواة نظام التشغيل DOS، وتم تحسينه في الإصدار 3.31 من نظام التشغيل DOS لدعم أقسام تصل سعتها إلى 2 جيجابايت
26hكتابة القرص المطلقة1.0+تم تنفيذه في نواة نظام التشغيل DOS، وتم تحسينه في الإصدار 3.31 من نظام التشغيل DOS لدعم أقسام تصل سعتها إلى 2 جيجابايت
27hإنهاء الإقامة والبقاء فيها1.0+تم التنفيذ في COMMAND.COM في DOS 1.0، وDOS kernel في DOS 2.0+
28hنداء الخمول2.0+يتم استدعاؤها بواسطة نواة نظام التشغيل DOS عند انتظار الإدخال
29hمخرجات Fastconsole2.0+يتم تنفيذ ذلك بواسطة برنامج تشغيل جهاز وحدة التحكم المدمج أو برنامج تشغيل بديل مثل ANSI.SYS
2Ahالتواصل والقسم الحرج3.0+يتم استدعاؤها بواسطة نواة نظام التشغيل DOS للتفاعل مع برامج الشبكات
2Bhغير مستخدم
2Chغير مستخدم
2Dhغير مستخدم
2Ehإعادة تحميل عابرة2.0+تم تنفيذه في COMMAND.COM
2Fhمجمع سينمائي3.0+يتم تنفيذه في نواة نظام التشغيل DOS وبرامج مختلفة (PRINT، MSCDEX، DOSKEY، APPEND، إلخ) اعتمادًا على رقم الوظيفة الفرعية

خدمات DOS INT 21h

فيما يلي قائمة بالوظائف التي يتم توفيرها عبر متجه مقاطعة البرامج الأساسي لواجهة برمجة تطبيقات نظام التشغيل DOS.

AHوصفإصدار
00hإنهاء البرنامج1.0+
01hإدخال الأحرف1.0+
02hإخراج الأحرف1.0+
03hمدخل إضافي1.0+
04hمخرج مساعد1.0+
05hمخرجات الطابعة1.0+
06hإدخال/إخراج وحدة التحكم المباشرة1.0+
07hإدخال مباشر إلى وحدة التحكم بدون صدى1.0+
08hإدخال وحدة التحكم بدون صدى1.0+
09hسلسلة العرض1.0+
0Ahإدخال لوحة المفاتيح المخزن مؤقتًا1.0+
0Bhالحصول على حالة الإدخال1.0+
0Chقم بتفريغ مخزن الإدخال المؤقت والإدخال1.0+
0Dhإعادة ضبط القرص1.0+
0Ehتعيين محرك الأقراص الافتراضي1.0+
0Fhفتح الملف1.0+
10hإغلاق الملف1.0+
11hابحث عن الملف الأول1.0+
12hابحث عن الملف التالي1.0+
13hحذف الملف1.0+
14hقراءة متسلسلة1.0+
15hالكتابة المتسلسلة1.0+
16hإنشاء ملف أو اقتطاعه1.0+
17hإعادة تسمية الملف1.0+
18hمحجوز1.0+
19hالحصول على محرك الأقراص الافتراضي1.0+
1Ahقم بتعيين عنوان نقل القرص1.0+
1Bhاحصل على معلومات تخصيص محرك الأقراص الافتراضي1.0+
1Chاحصل على معلومات تخصيص محرك الأقراص المحدد1.0+
1Dhمحجوز1.0+
1Ehمحجوز1.0+
1Fhالحصول على كتلة معلمات القرص لمحرك الأقراص الافتراضي1.0+
20hمحجوز1.0+
21hقراءة عشوائية1.0+
22hكتابة عشوائية1.0+
23hاحصل على حجم الملف بالسجلات1.0+
24hرقم السجل العشوائي1.0+
25hمجموعة متجه المقاطعة1.0+
26hإنشاء PSP1.0+
27hقراءة عشوائية من كتلة1.0+
28hكتابة عشوائية في كتلة1.0+
29hتحليل اسم الملف1.0+
2Ahالحصول على التاريخ1.0+
2Bhتحديد التاريخ1.0+
2Chاحصل على الوقت1.0+
2Dhضبط الوقت1.0+
2Ehقم بتعيين علامة التحقق1.0+
2Fhاحصل على عنوان نقل القرص2.0+
30hاحصل على نسخة DOS2.0+
31hإنهاء الإقامة والبقاء فيها2.0+
32hالحصول على كتلة معلمات القرص لمحرك الأقراص المحدد2.0+
33hاحصل على أو اضبط مفتاح Ctrl-Break2.0+
34hالحصول على مؤشر علامة InDOS2.0+
35hاحصل على متجه المقاطعة2.0+
36hاحصل على مساحة تخزين مجانية2.0+
37hالحصول على أو تعيين شخصية التبديل2.0+
38hالحصول على معلومات البلد أو تعيينها2.0+
39hإنشاء دليل فرعي2.0+
3Ahإزالة الدليل الفرعي2.0+
3Bhتغيير الدليل الحالي2.0+
3Chإنشاء ملف أو اقتطاعه2.0+
3Dhفتح الملف2.0+
3Ehإغلاق الملف2.0+
3Fhقراءة ملف أو جهاز2.0+
40hكتابة ملف أو جهاز2.0+
41hحذف الملف2.0+
42hنقل مؤشر الملف2.0+
43hالحصول على سمات الملف أو تعيينها2.0+
44hالتحكم في الإدخال/الإخراج للأجهزة2.0+
45hمقبض مكرر2.0+
46hمقبض إعادة التوجيه2.0+
47hالحصول على الدليل الحالي2.0+
48hتخصيص الذاكرة2.0+
49hتحرير الذاكرة2.0+
4Ahإعادة تخصيص الذاكرة2.0+
4Bhتنفيذ البرنامج2.0+
4Chإنهاء العملية برمز إرجاع2.0+
4Dhاحصل على رمز إرجاع البرنامج2.0+
4Ehابحث عن الملف الأول2.0+
4Fhابحث عن الملف التالي2.0+
50hاضبط جهاز PSP الحالي2.0+
51hاحصل على أحدث إصدار من PSP2.0+
52hالحصول على مؤشرات DOS الداخلية (SYSVARS)2.0+
53hإنشاء كتلة معلمات القرص2.0+
54hاحصل على علامة التحقق2.0+
55hإنشاء برنامج PSP2.0+
56hإعادة تسمية الملف2.0+
57hالحصول على تاريخ ووقت الملف أو تعيينهما2.0+
58hالحصول على استراتيجية التخصيص أو تحديدها2.11+
59hاحصل على معلومات إضافية عن الخطأ3.0+
5Ahإنشاء ملف فريد3.0+
5Bhإنشاء ملف جديد3.0+
5Chقفل أو فتح الملف3.0+
5Dhوظائف تبادل الملفات3.0+
5Ehوظائف الشبكة3.0+
5Fhوظائف إعادة توجيه الشبكة3.0+
60hتحديد اسم الملف3.0+
61hمحجوز3.0+
62hاحصل على أحدث إصدار من PSP3.0+
63hاحصل على مؤشر جدول البايت الرئيسي لـ DBCS3.0+
64hقم بتعيين علامة انتظار حدث خارجي3.2+
65hاحصل على معلومات موسعة عن البلد3.3+
66hالحصول على صفحة الرمز أو تعيينها3.3+
67hتحديد عدد المقابض3.3+
68hملف الالتزام3.3+
69hالحصول على معرّف الوسائط أو تعيينه4.0+
6Ahملف الالتزام4.0+
6Bhمحجوز4.0+
6Chفتح/إنشاء ملف موسع4.0+

أنظمة التشغيل ذات الدعم الأصلي

أنظمة التشغيل المزودة بطبقة محاكاة DOS

محاكيات أخرى

انظر أيضاً

مراجع

للمزيد من القراءة

  • ألين، بول ؛ غيتس، بيل ؛ كينغ، أدريان؛ لارسون، كريس؛ ليتوين، غوردون ؛ أورير، بوب ؛ باترسون، تيم ؛ بيترز، كريس؛ فيليبس، بروس؛ رينولدز، آرون ؛ ستيلماكر، بيتي؛ ​​زبيكوفسكي، مارك (1986). "المستشارون التقنيون". موسوعة المراجع التقنية لنظام التشغيل MS-DOS (الإصدارات 1.0-3.2) . تحرير: بورنشتاين، هوارد؛ بريديهوفت، لورانس؛ دنكان، راي؛ موريس، كارول؛ روز، ديفيد؛ سوشا، جون ؛ توملين، جيم؛ فيان، كاثلين؛ وولفرتون، فان بيلي، جيم؛ بريبيرناو، باري؛ بيسون، بام؛ لويس، أندريا؛ ريغمير، ديفيد. مكتبة مراجع مايكروسوفت. المجلد  1 (الطبعة الأصلية المسحوبة  ). ريدموند، واشنطن، الولايات المتحدة الأمريكية: مطبعة مايكروسوفت . ISBN 0-914845-69-1LCCN 86-8640 . OCLC 635600205 .​  (١٧ صفحة + ١٠٥٣ صفحة؛ ٢٩  سم) (ملاحظة: تحتوي هذه الطبعة الأصلية على مخططات انسيابية لآليات عمل النظام الداخلية. سحبتها مايكروسوفت قبل توزيعها على نطاق واسع عام ١٩٨٦ لاحتوائها على العديد من الأخطاء الواقعية، بالإضافة إلى بعض المعلومات السرية التي ما كان ينبغي نشرها. لم يبقَ منها سوى عدد قليل من النسخ المطبوعة. وقد استُبدلت بطبعة مُنقّحة بالكامل عام ١٩٨٨.))
  • زبيكوفسكي، مارك ؛ ألين، بول ؛ بالمر، ستيف ؛ بورمان، روبن؛ بورمان، روب؛ بتلر، جون؛ كارول، تشاك؛ تشامبرلين، مارك؛ تشيل، ديفيد؛ كولي، مايك؛ كورتني، مايك؛ دريفوس، مايك؛ دنكان، راشيل؛ إيكهارت، كورت؛ إيفانز، إريك؛ فارمر، ريك؛ غيتس، بيل ؛ جيري، مايكل؛ غريفين، بوب؛ هوغارث، دوغ؛ جونسون، جيمس دبليو؛ كرماني، كامل؛ كينغ، أدريان؛ كوخ، ريد؛ لاندوفسكي، جيمس؛ لارسون، كريس؛ لينون، توماس؛ ليبكي، دان؛ ماكدونالد، مارك ؛ ماكيني، بروس؛ مارتن، باسكال؛ ماذرز، إستيل؛ ماثيوز، بوب؛ ميلين، ديفيد؛ ميرجنتايم، تشارلز؛ نيفين، راندي؛ نيويل، دان؛ نيويل، تاني؛ نوريس، ديفيد؛ أوليري، مايك؛ أورير، بوب ؛ أولسون، مايك؛ أوسترمان، لاري؛ أوستلينغ، ريدج؛ باي، سونيل؛ باترسون، تيم ؛ بيريز، غاري؛ بيترز، كريس؛ بيتزولد، تشارلز ؛ بولوك، جون؛ رينولدز، آرون ؛ روبين، داريل؛ رايان، رالف؛ شولمايسترز، كارل؛ شاه، راجين؛ شو، باري؛ شورت، أنتوني؛ سليفكا، بن؛ سميرل، جون؛ ستيلمايكر، بيتي؛ ​​ستودارد، جون؛ تيلمان، دينيس؛ ويتن، غريغ؛ يونت، ناتالي؛ زيك، ستيف (1988). "المستشارون التقنيون". موسوعة MS-DOS: الإصدارات من 1.0 إلى 3.2 . بقلم: دنكان، راي؛ بوستويك، ستيف؛ بورغوين، كيث؛ بايرز، روبرت أ.؛ هوغان، ثوم؛ كايل، جيم؛ ليتوين، غوردون ؛ بيتزولد، تشارلز ؛ رابينوفيتز، تشيب؛ توملين، جيم؛ ويلتون، ريتشارد؛ وولفرتون، فان؛ وونغ، ويليام؛ وودكوك، جوان (  طبعة منقحة بالكامل). ريدموند، واشنطن، الولايات المتحدة الأمريكية: مطبعة مايكروسوفت . ISBN 1-55615-049-0LCCN 87-21452 . OCLC 16581341 .​  (xix+1570 صفحة؛ 26  سم) (ملاحظة: تم نشر هذه الطبعة في عام 1988 بعد إعادة صياغة واسعة النطاق للطبعة الأولى المسحوبة عام 1986 من قبل فريق مختلف من المؤلفين.)
  • نورتون، بيتر ؛ ويلتون، ريتشارد (1987). دليل بيتر نورتون الجديد للمبرمجين لأجهزة IBM PC وPS/2 . مطبعة مايكروسوفت. ISBN 1-55615-131-4.
  • راي دنكان (1988). برمجة MS-DOS المتقدمة: دليل مايكروسوفت لمبرمجي لغة التجميع ولغة C. مطبعة مايكروسوفت. ISBN 0914845772.
  • هوجان، ثوم (1991). كتاب مصادر الحاسوب الشخصي للمبرمج . مطبعة مايكروسوفت. رقم ISBN 155615321X.
  • مرجع مبرمجي نظام التشغيل MS-DOS - المرجع التقني الرسمي لنظام التشغيل MS-DOS . منشورات مايكروسوفت. 1993. ISBN 1556155468.
  • تحديث تقني لنظام التشغيل IBM PC DOS 7
  • سلسلة مراجع مطوري OpenDOS دليل مبرمج OpenDOS دليل النظام والمبرمج . شركة كالدرا، أغسطس 1997. رقم جزء كالدرا 200-DOPG-003. مؤرشف من الأصل بتاريخ 7 أكتوبر 2017. تم الاطلاع عليه بتاريخ 28 يونيو 2012 .(طُبع في المملكة المتحدة.)