تنفيذ برنامج القناة

في أنظمة تشغيل الحواسيب المركزية من IBM ، يُعدّ تنفيذ برنامج القناة ( EXCP ) ماكرو يُولّد استدعاءً للنظام ، ويُنفّذ كتعليمات استدعاء المشرف ، للوصول إلى الأجهزة على مستوى منخفض، حيث يكون المبرمج مسؤولاً عن توفير برنامج القناة - وهو قائمة بأوامر خاصة بالجهاز (CCWs) - ليتم تنفيذها بواسطة قنوات الإدخال/الإخراج ووحدات التحكم والأجهزة. [ 1 ] [ 2 ] يُشرح برنامج EXCP لنظام التشغيل OS/360 والإصدارات اللاحقة [ 3 ] [ 4 ] بمزيد من التفصيل في دليل مبرمج نظام التشغيل. [ 5 ] يُشرح برنامج EXCP لنظام التشغيل DOS/360 والإصدارات اللاحقة [ 6 ] بمزيد من التفصيل في قسم المشرف ووحدات الإدخال/الإخراج في نظام DOS. [ 7 ] [ 8 ] تُغطي هذه المقالة بشكل أساسي أنظمة التشغيل من OS/360 إلى z/OS ؛ وتختلف بعض التفاصيل بالنسبة لأنظمة TOS/360 وDOS/360 إلى z/VSE .

تحديد مجموعات البيانات

باستخدام EXCP، يمكن تشغيل الأجهزة القديمة ومجموعات البيانات القديمة بأداء عالٍ نسبيًا. يتم فتح أجهزة EXCP (أي إتاحتها للتطبيق) عن طريق تحديد كتلة التحكم في البيانات (DCB) لنظام التشغيل وDTFPH لنظام DOS.

تحديد عمليات الإدخال/الإخراج

بالنسبة لأنظمة التشغيل من OS/360 إلى z/OS، يوفر البرنامج كتلة إدخال/إخراج (IOB) لأمر EXCP؛ إذا نفّذ البرنامج أمر EXCP على عدة كتل إدخال/إخراج، يقوم النظام بمعالجتها بالترتيب الذي طُلبت به. بالنسبة لوحدات التخزين ذات القرص المباشر (DASD)، تتضمن كتلة الإدخال/الإخراج عنوان بحث، IOBSEEK ، بالصيغة MBBCCHHR، حيث M هو الامتداد، وBB هو خانة خلية البيانات، وCCHH هو الأسطوانة والرأس، وR هو رقم السجل.

الزوائد

الملحق هو روتين يكتبه المبرمج لتوفير تحكم إضافي في عمليات الإدخال/الإخراج أثناء تنفيذ برنامج القناة. [ 9 ] تسمح قائمة شاملة من الملحقات [ 10 ] ( التي تخرج في سياق EXCP) للبرامج المصرح لها [ أ ] بتجاوز أو تعزيز العديد من فحوصات أمان النظام وسلامة البيانات. معظم هذه الملحقات مدعومة للتوافق مع الإصدارات السابقة من نظام التشغيل، ولكن تم تعديل وظائف العديد منها أو توسيعها لنظام MVS. يتم تحديد الملحقات في DCB كآخر حرفين من اسم الوحدة IGG019xx، حيث xx = من WA إلى Z9، شاملةً. أسماء الوحدات هذه محجوزة للملحقات التي يكتبها المبرمج. أي اسم آخر من الشكل IGG019xx محجوز للاستخدام بواسطة طرق الوصول من IBM. [ ب ] يجب أن توجد الملحقات في SYS1.SVCLIB (SYS1.LPALIB في SVS أو الإصدارات الأحدث من نظام التشغيل).

سلامة مجموعة البيانات

عادةً، عندما يفتح برنامجٌ ما ملف DCB لـ EXCP، يُنشئ الأمر OPEN كتلة امتداد بيانات (DEB) تحتوي على كل امتداد لوحدة التخزين الأولى من مجموعة البيانات المرتبطة. مع ذلك، في حالة التثبيت المتوازي ، يُنشئ OPEN كتلة DEB تحتوي على جميع الامتدادات لجميع وحدات التخزين. يتم ربط كل كتلة DEB بملف DCB من الأمام والخلف، ويتحقق EXCP من هذا الربط كإجراء أمني للنظام، حيث أن ملف DCB موجود في وحدة تخزين المستخدم غير المحمية بينما توجد كتلة DEB في وحدة تخزين النظام المحمية، المجموعة الفرعية 253. في نظامي التشغيل OS/VS1 وOS/VS2، يستخدم EXCP الأمر DEBCHK للتأكد من أن الأمر OPEN هو من أنشأ كتلة DEB. بالنسبة لوحدات التخزين ذات الوصول المباشر (DASD)، يتحقق EXCP من أن عنوان البحث في IOB يقع ضمن أحد الامتدادات، ويستخدم قناع تعيين الملف ، على سبيل المثال، لتحديد ما إذا كان الامتداد أسطوانيًا أم مساريًا، وما إذا كانت الكتابة مسموحة؛ وهذا يمنع البحث خارج المسار المحدد (الأسطواني). إذا حاول المبرمج قراءة بيانات تتجاوز نهاية المسار (الأسطوانة)، يتم إجراء فحص للوحدة ، ويعيد برنامج استعادة الأخطاء تشغيل برنامج القناة مع المسار (الأسطوانة) التالي من النطاق الحالي. إذا تجاوزت العملية نهاية النطاق، يستدعي EXCP ملحق نهاية النطاق ، والذي قد يُحدِّث IOB ويطلب إما من EXCP إعادة إصدار الطلب أو إنهاء العملية.

مجموعات البيانات القديمة فقط

يُخلط أحيانًا بين EXCP وطريقة الوصول المباشر إلى أجهزة التخزين، إلا أنها ليست مخصصة لأجهزة التخزين ذات الوصول المباشر فقط؛ بل هي واجهة وصول عامة منخفضة المستوى تدعم جميع أنواع الأجهزة القديمة وجميع أنواع تنظيمات مجموعات البيانات القديمة . وللوصول إلى جميع أنواع الأجهزة وجميع تنظيمات مجموعات البيانات، تتوفر واجهة بدء الإدخال/الإخراج (STARTIO) الأكثر عمومية في نظام التشغيل MVS/370 والإصدارات اللاحقة منه، على الرغم من أنها ليست واجهة مدعومة رسميًا.

تبسيط العمليات على مجموعات البيانات ذات الوصول المباشر

يُعدّ برنامج الوصول المباشر (XDAP) أحد أنواع EXCP ، ويُستخدم للوصول إلى وحدات التخزين ذات الوصول المباشر فقط، وهو مُخصّص لقراءة وتحديث سجلات التخزين ذات الوصول المباشر الموجودة. لا يُمكن استخدام XDAP لإضافة سجلات، ولكن يُمكن استخدامه مع BSAM أو BPAM لإضافة سجلات إلى مجموعات البيانات هذه، وتستخدم العديد من مكونات نظام التشغيل XDAP بهذه الطريقة (خاصةً مُحرّر الربط، IEWL).

الوصول إلى أجهزة الاتصالات

يمكن أيضًا استخدام EXCP للوصول إلى أجهزة الاتصالات المتصلة بوحدات التحكم في الاتصالات IBM 2701 و 2702 و 2703 ومعالجات الواجهة الأمامية IBM 370x أو Amdahl 470x (والإصدارات اللاحقة لها) التي تعمل في وضع المحاكي (EP) أو وضع المحاكي المقسم (PEP).

العلاقة بالمشرف

تكون واجهة EXCP الأمامية دائمًا في وضع كتلة التحكم في المهام (TCB)، وهو الوضع الطبيعي للتطبيقات، [ 12 ] حيث أن EXCP هو نوع 1 SVC .

في نظام التشغيل MVS/370 والإصدارات اللاحقة، يستدعي معالج EXCP الأمر STARTIO لجدولة تنفيذ برنامج القناة. على الرغم من أن الواجهة الخلفية لمعالج EXCP تعمل دائمًا في وضع كتلة طلب الخدمة ( SRB ) ، [ 12 ] إلا أنها تحتوي على رمز محاكاة يسمح للملحقات المُطوَّرة للإصدارات السابقة من نظام التشغيل (قبل MVS)، وتحديدًا لمعالج EXCP، بالعمل كما كانت في السابق، وبالتالي تبدو وكأنها في وضع TCB، الذي صُممت هذه الملحقات من أجله في الأصل. قد يُعقِّد هذا التمييز عملية تحويل بعض طرق الوصول والتطبيقات المُخصصة إلى MVS.

برامج القناة

برامج قنوات النظام 360 هي سلسلة من الأوامر التي تُنفذها القناة وجهاز الإدخال/الإخراج. يمكن أن توجد برامج القنوات في أي مكان في الذاكرة الرئيسية. برنامج القناة عبارة عن سلسلة من كلمات أوامر القناة (CCWs)، والتي يمكن تنفيذها بالتسلسل ما لم يتم تنفيذ فرع يُسمى نقل البيانات إلى القناة (TIC)، أو تُعيد القناة مُعدِّل حالة . كل كلمة أوامر قناة هي كلمة مزدوجة (ثمانية بايتات) كما يلي: [ 13 ] [ d ]

بت 0 7 8 31 +--------+-----------------------+ |الأمر | عنوان البيانات | +--------+-----------------------+ 32 36 40 47 48 63 +------+---+--------+------------+ |الأعلام |000|محجوزة| عدد | +------+---+--------+------------+ 

تم تعريف ستة أوامر في البتات ذات الترتيب الأدنى لحقل الأوامر (0-7). أما البتات الأربعة (أو الستة) ذات الترتيب الأعلى فهي مُعدِّلات ('M') لبعض الأوامر، أو يتم تجاهلها. الأوامر هي:

 0100 - سينس 1000 - نقل في القناة (TIC) 1100 - اقرأ بالعكس --01 - اكتب 10- اقرأ 11- التحكم 

عنوان البيانات (8-31) هو عنوان 24 بت لمنطقة تخزين مؤقتة رئيسية يتم نقل البيانات إليها أو منها.

يتم تعريف بتات العلم (32-36) على النحو التالي:

قليلبطاقة تعريفاسموصف
32قرص مضغوطبيانات السلسلةاستخدم منطقة التخزين المحددة في الأمر التالي CCW لمتابعة هذا الأمر
33نسخةسلسلة القيادةنفّذ الأمر التالي عكس اتجاه عقارب الساعة عند اكتمال هذا الأمر. إذا لم يتم ضبط CC أو CD، فسيتم إنهاء برنامج القناة بعد تنفيذ هذا الأمر.
34SLIإخفاء مؤشر الطولتجاهل الطول غير الصحيح لهذا الأمر
35يتخطىيتخطىمنع نقل البيانات لهذا الأمر
36PCIمقاطعة يتم التحكم فيها بواسطة البرنامجقم بتوليد مقاطعة عند بدء تنفيذ هذا الأمر.

يشير حقل العد (48-63) إلى عدد البايتات التي سيتم نقلها بواسطة هذا الأمر.

تُمرَّر جميع البتات الثمانية للأوامر التي تبدأ عمليات الإدخال/الإخراج إلى الجهاز. "تُحدِّد بتات المُعدِّل للجهاز كيفية تنفيذ الأمر." على سبيل المثال، بالنسبة لوحدة التخزين IBM 2305 DASD، قد يكون لأمر الكتابة ('MMMMMM01'BX) القيم التالية: [ 17 ]

قيمة البتالنظام الست عشريوصف
٠٠٠١ ١٠٠١'19'Xاكتب عنوان المنزل
٠٠٠١ ٠١٠١'15'Xسجل الكتابة 0
٠٠٠١ ٠٠٠١'11'Xمسح
٠٠٠١ ١١٠١'1D'Xاكتب العدد والمفتاح والبيانات
0000 0001'01'Xاكتب العدد الخاص، والمفتاح، والبيانات
0000 0101'05'Xكتابة البيانات
0000 1101'0D'Xكتابة المفتاح والبيانات

ملحوظات

  1. توجد عدة أنواع من التصاريح لاستخدام الملحقات:
    • يمكن للبرنامج المصرح به من قبل APF، والذي يعمل في مفتاح النظام (0-7) أو في وضع المشرف، استخدام أي ملحق.
    • يجوز للبرنامج استخدام أي ملحق يتم تحديده تلقائيًا بواسطة OPEN لاستخدام طريقة الوصول.
    • يمكن للبرنامج استخدام أي ملحق يتم تعريفه في وقت IPL في IEAAPP00. [ 11 ]
  2. IGG = بادئة مكون دعم الإدخال/الإخراج؛ 019 = المكون الفرعي لفتح SVC؛ xx = وظيفة فرعية
  3. في أنظمة التشغيل OS/360 و OS/VS1 و SVS لا يوجد وضع SRB وتعمل الملحقات مع تعطيل المقاطعات.
  4. يضيف الخلفاء علامات وتنسيقات إضافية
    نظام /370 مع ترجمة العناوين الديناميكية
    يضيف ميزة معالجة البيانات غير المباشرة للقناة [ 14 ] وعلامة عنوان البيانات غير المباشرة [ 15 ] عكس اتجاه عقارب الساعة.
    النظام/370-XA
    يضيف تنسيق 1 عكس عقارب الساعة [ 16 ] بعناوين 31 بت

مراجع

S/360
مبادئ تشغيل نظام IBM System/360 (ملف PDF) (الطبعة السابعة ). IBM . يناير 1967. A22-6821-6 . تاريخ الاطلاع: 4 ديسمبر 2019 .
S/370
مبادئ تشغيل نظام IBM System/370 (ملف PDF) ( الطبعة الحادية عشرة). IBM. سبتمبر 1987. GA22-7000-10.
S/370-XA
نظام IBM/370 - البنية الموسعة - مبادئ التشغيل (ملف PDF) (الطبعة الثانية ). IBM. يناير 1987. SA22-7085-1.
z/ARCH
z/Architecture - مبادئ التشغيل (ملف PDF) ( الطبعة الرابعة عشرة). IBM . مايو 2022. SA22-7832-13 . تم الاطلاع عليه في 4 ديسمبر 2019 .
DFSMSdfp
خدمات DFSMSdfp المتقدمة لنظام التشغيل z/OS الإصدار 2 الإصدار 4. شركة IBM . أغسطس 2020. SC23-6861-40.
  1. رينو هانولا (1974). الحواسيب والبرمجة: مدخل إلى لغة التجميع System/360-370 . هوتون ميفلين. ص 431. ISBN  978-0-395-16796-0.
  2. غوبال ك. كابور (1 يناير 1970). برمجة لغة التجميع IBM 360. جون وايلي وأولاده. الصفحات 453-454، 456-459 ، 461. ISBN  978-0-471-45840-1.
  3. روبرت هـ. جونسون (يونيو 1989). أنظمة الرؤية المتنقلة: المفاهيم والتسهيلات . منشورات إنترتكست. ص 558. ISBN  978-0-07-032673-6.
  4. "الفصل 4. تنفيذ برامج القنوات الخاصة بك" (ملف PDF) . خدمات DFSMSdfp المتقدمة لنظام التشغيل z/OS الإصدار 2 الإصدار 4 (ملف PDF) . شركة IBM. أغسطس 2020. الصفحات 151-210 . SC23-6861-40. 
  5. دليل مبرمج نظام التشغيل IBM System/360 (ملف PDF) . شركة IBM. مارس 1967. C28-6550-2.
  6. غاري أ. ستوتس (1 أغسطس 1990). DOS/VSE: مقدمة إلى نظام التشغيل . كيو إي دي لعلوم المعلومات. ص 18. ISBN  978-0-89435-332-1.
  7. مشرف نظام التشغيل DOS ووحدات الإدخال/الإخراج (ملف PDF) . شركة IBM. GC24-S037-12.
  8. دليل مستخدم وحدات الماكرو لنظام IBM z/VSE الإصدار 6 الإصدار 1 (ملف PDF) . IBM. 2015. SC34-2709-00. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 18-12-2019 . تم الاطلاع عليه بتاريخ 18-12-2019 .
  9. "الملحقات" (ملف PDF) . إدارة بيانات نظام التشغيل لمبرمجي الأنظمة - الإصدار 21 (ملف PDF) . مكتبة مراجع أنظمة IBM ( الطبعة الثانية عشرة). شركة IBM. أبريل 1973. ص 46. GC28-6550-ll . تاريخ الاسترجاع: 28 يونيو 2022 .  
  10. DFSMSdfp ، الصفحات 199-200، ملحقات EXCP و EXCPVR .
  11. DFSMSdfp ، الصفحات 201-202، قائمة الملحقات المعتمدة (IEAAPP00) .
  12. 1 2 Software AG. "معالجة Natural zIIP: TCBs وSRBs وEnclaves" . تم الاطلاع عليه في 22 مارس 2021 .
  13. S360 ، الصفحات 84-121، عمليات الإدخال/الإخراج .
  14. S370 ، الصفحات 13-45–13-46، معالجة البيانات غير المباشرة للقناة .
  15. S370 ، ص 13-38 ، كلمة أمر القناة .
  16. S370-XA ، ص. 15-24-15-25 ، كلمة أمر القناة . 
  17. شركة آي بي إم (أغسطس 1971). دليل مرجعي لوحدة التحكم في التخزين IBM 2835 ووحدة التخزين ذات الرأس الثابت IBM 2305 (ملف PDF) . صفحة 17. تاريخ الاطلاع: 5 ديسمبر 2019 .