كتلة التحكم

في مجال الحوسبة ، تُعرف كتلة التحكم بأنها منطقة في الذاكرة أو القرص تحتوي على مجموعة من البيانات ذات الصلة "تُستخدم لأغراض التعريف والتحكم". [ 1 ]

تستخدم أنظمة تشغيل الحاسوب وأنظمتها الفرعية وتطبيقاتها وحدات التحكم لتوحيد المعلومات المتعلقة بحالة النظام والموارد. يحتوي نظام التشغيل على وحدة تحكم لتتبع حالة البرامج قيد التشغيل، ومن أمثلتها وحدة التحكم في العمليات ، ووحدة التحكم في الخيوط ، ووحدة التحكم في المهام ، ووحدات طلبات الخدمة . تحتفظ وحدات التحكم، التي قد تُسمى أيضًا وحدات التحكم في الوحدات ، بحالة جميع الأجهزة المعروفة للنظام. تُحدد الملفات المفتوحة بواسطة وحدات تحكم قد تُسمى وحدات التحكم في الملفات أو وحدات التحكم في البيانات . قد تُدير أنظمة التشغيل أو التطبيقات الذاكرة باستخدام وحدات التحكم. على سبيل المثال، يحتفظ نظام IBM OS/360 MVT بمجموعات فرعية من التخزين لأغراض مختلفة، ويتم تتبعها بواسطة وحدات التحكم. [ 2 ]

تخزين

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

رسم الخرائط

تحتوي كتلة التحكم على تعريف أو ربط بلغة برمجة واحدة أو أكثر . وهي تُعادل هياكل C التي تُحدد الحقول والقيم التي قد تحتويها. عادةً ما يحتاج البرنامج الذي يصل إلى كتلة تحكم إلى توفير مؤشر يحتوي على عنوان الكتلة.

مثال

فيما يلي مثال على تعيين لغة C لكتلة التحكم في الملفات من نظام التشغيل PC DOS : [ 8 ]

/* وحدة تحكم القرص القياسية لنظام DOS (24 بايت) */ typedef struct { uint8_t drive ; // رقم القرص: 0 = افتراضي، 1 = A:، 2 = B:، إلخ. char filename [ 8 ]; // اسم الملف (ASCII، مع إضافة مسافات) char ext [ 3 ]; // الامتداد (ASCII، مع إضافة مسافات) uint16_t current_block ; // رقم الكتلة الحالية uint16_t record_size ; // حجم السجل المنطقي (افتراضي 128 بايت) uint32_t file_size ; // حجم الملف بالبايت (يتم تعيينه بواسطة DOS عند الفتح) uint16_t date ; // تاريخ آخر كتابة uint16_t time ; // وقت آخر كتابة uint8_t reserved [ 8 ]; // للاستخدام الداخلي لنظام DOS uint8_t current_record ; // السجل الحالي داخل الكتلة uint32_t random_record ; // رقم سجل عشوائي لعمليات الإدخال/الإخراج العشوائية } FCB ;

فيما يلي تعريف كلمة جدول صفحات Multics في PL/I . [ 9 ]

/* بداية ملف التضمين io_ptw.incl.pl1 */ dcl io_ptwp ptr; dcl 1 io_ptw aligned based (io_ptwp), 2 pad1 bit (2) unaligned, عنوانان غير ثابتين (16) غير محاذيين، 2 pad2 bit (13) unaligned, 2 بت كتابة (1) غير محاذي، 2 بتات التنظيف (1) غير محاذية، بتتان صالحتان (1) غير محاذيتين، 2 pad3 bit (2) unaligned; /* نهاية ملف التضمين io_ptw.incl.pl1 */ 

مراجع

  1. "كتلة التحكم" . موسوعة مجلة الكمبيوتر الشخصي . مجلة الكمبيوتر الشخصي . تم الاطلاع عليه بتاريخ 27 نوفمبر 2025 .
  2. 1 2 دليل نظام التشغيل IBM System/3S0 MVT (ملف PDF) . شركة IBM. مارس 1972. الصفحات 185-189 . تم الاطلاع عليه بتاريخ 28 نوفمبر 2025 . 
  3. "ما الذي يحتويه حيز العنوان؟" . مفاهيم z/OS . شركة IBM . تم الاطلاع عليه بتاريخ 28 نوفمبر 2025 .
  4. مبادئ تشغيل بنية z (ملف PDF) (الطبعة الخامسة عشرة ). شركة IBM . أبريل 2025. ص 3-21-3-23 . SA22-7832-14 .  
  5. نظام التشغيل IBM System/360: كتل التحكم في النظام (ملف PDF) . مكتبة مراجع الأنظمة. IBM. أبريل 1973. الصفحات 21-31 . تم الاطلاع عليه بتاريخ 28 نوفمبر 2025 . 
  6. "open(3) - صفحة دليل لينكس" . die.net . تم الاطلاع عليه بتاريخ 28 نوفمبر 2025 .
  7. "close(3) - صفحة دليل لينكس" . die.net . تم الاطلاع عليه بتاريخ 28 نوفمبر 2025 .
  8. مرجع تقني لنظام التشغيل DOS لعائلة برامج الحواسيب الشخصية من IBM (ملف PDF) . شركة IBM. فبراير 1985. الصفحات 7-13–7-15 . تاريخ الاطلاع: 28 نوفمبر 2025 . تم إنشاؤه بواسطة ChatGPT "أعطني بنية C لـ FCB في نظام DOS"
  9. "io_ptw.incl.pl1" . web.mit.edu/multics-history . تم الاطلاع عليه بتاريخ 28 نوفمبر 2025 .