سجلات التمهيد الرئيسية

سجل التمهيد الرئيسي ( MBR ) هو نوع من قطاعات التمهيد في الكتلة الأولى من أجهزة التخزين الحاسوبية المقسمة ، مثل الأقراص الثابتة أو محركات الأقراص القابلة للإزالة، والمخصصة للاستخدام مع أنظمة IBM PC وما بعدها. وقد تم تقديم مفهوم MBR للجمهور في عام 1983 مع نظام التشغيل PC DOS 2.0 .

يحتوي سجل التمهيد الرئيسي (MBR) على معلومات حول كيفية تقسيم قطاعات القرص (المعروفة أيضًا باسم "الكتل") إلى أقسام، ويحتوي كل قسم نظريًا على نظام ملفات. كما يحتوي سجل التمهيد الرئيسي على رمز تنفيذي يعمل كمحمل لنظام التشغيل المثبت، وذلك عادةً عن طريق نقل التحكم إلى المرحلة الثانية من المحمل، أو بالتزامن مع سجل تمهيد وحدة التخزين (VBR) لكل قسم. يُشار إلى رمز سجل التمهيد الرئيسي هذا عادةً باسم محمل التمهيد.

يُحدّ تنظيم جدول التقسيم في سجل التمهيد الرئيسي (MBR) من الحد الأقصى لمساحة التخزين القابلة للعنونة على القرص المُقسّم إلى 2 تيرابايت (2 × 32 × 512 بايت) . [ 1 ] ولا تُدعم رسميًا الطرق التي تهدف إلى رفع هذا الحد بشكل طفيف باستخدام حسابات 32 بت أو قطاعات بحجم 4096 بايت، لأنها تُؤدي إلى كسر التوافق بشكل خطير مع مُحمّلات الإقلاع الحالية، ومعظم أنظمة التشغيل المتوافقة مع MBR، وأدوات النظام المرتبطة بها، وقد تُسبب تلفًا خطيرًا للبيانات عند استخدامها خارج بيئات النظام المُحكمة. لذلك، تم استبدال نظام التقسيم القائم على MBR بنظام جدول تقسيم GUID (GPT) في جميع أجهزة الكمبيوتر الجديدة تقريبًا. ويمكن لـ GPT أن يتعايش مع MBR لتوفير شكل محدود من التوافق مع الأنظمة القديمة.    

لا توجد سجلات التمهيد الرئيسية (MBRs) على الوسائط غير المقسمة مثل الأقراص المرنة أو الأقراص المرنة الفائقة أو أجهزة التخزين الأخرى المصممة للعمل على هذا النحو، كما أنها ليست موجودة بالضرورة على محركات الأقراص المستخدمة في منصات غير أجهزة الكمبيوتر الشخصية.

ملخص

تم تقديم دعم الوسائط المقسمة، وبالتالي سجل التمهيد الرئيسي (MBR)، مع نظام التشغيل IBM PC DOS 2.0 في مارس 1983 لدعم القرص الصلب بسعة  10 ميجابايت لجهاز IBM Personal Computer XT الجديد آنذاك ، والذي كان لا يزال يستخدم نظام الملفات FAT12 . كتب ديفيد ليتون من شركة IBM النسخة الأصلية من سجل التمهيد الرئيسي في يونيو 1982. كان جدول التقسيم يدعم ما يصل إلى أربعة أقسام أساسية . لم يتغير هذا الأمر عند تقديم نظام الملفات FAT16 مع نظام التشغيل DOS 3.0. أُضيف دعم القسم الموسع ، وهو نوع خاص من الأقسام الأساسية يُستخدم كحاوية للأقسام الأخرى، مع نظام التشغيل DOS 3.2، بينما أُضيف دعم محركات الأقراص المنطقية المتداخلة داخل القسم الموسع مع نظام التشغيل DOS 3.30. بما أن أنظمة MS-DOS و PC DOS و OS/2 و Windows لم يتم تمكينها من الإقلاع منها، فقد ظل تنسيق MBR ورمز الإقلاع دون تغيير تقريبًا في الوظائف (باستثناء بعض تطبيقات الطرف الثالث) طوال حقبة DOS و OS/2 حتى عام 1996. 

في عام 1996، أُضيف دعم عناوين الكتل المنطقية (LBA) في نظامي التشغيل ويندوز 95B وMS-DOS 7.10 (لا يُخلط بينه وبين IBM PC-DOS 7.1) لدعم الأقراص التي تزيد سعتها عن 8  جيجابايت. كما أُضيفت الطوابع الزمنية للأقراص . [ 2 ] ويعكس هذا أيضًا فكرة أن يكون سجل التمهيد الرئيسي (MBR) مستقلًا عن نظام التشغيل ونظام الملفات. مع ذلك، تم التنازل جزئيًا عن قاعدة التصميم هذه في تطبيقات مايكروسوفت الأحدث لسجل التمهيد الرئيسي، والتي تفرض الوصول عبر CHS لأنواع أقسام FAT16B و FAT32 0x06 / 0x0B ، بينما يُستخدم LBA لأنواع الأقسام 0x0E / 0x0C .

على الرغم من ضعف توثيق بعض التفاصيل الجوهرية لتنسيق سجل التمهيد الرئيسي (MBR) في بعض الأحيان (مما تسبب أحيانًا في مشاكل توافق)، فقد تم اعتماده على نطاق واسع كمعيار صناعي فعلي، نظرًا لشعبية أجهزة الكمبيوتر المتوافقة مع نظام التشغيل Windows وطبيعته شبه الثابتة على مدى عقود. وصل الأمر إلى حد دعمه من قبل أنظمة تشغيل الكمبيوتر لمنصات أخرى. في بعض الأحيان، كان هذا بالإضافة إلى معايير أخرى موجودة مسبقًا أو معايير متعددة المنصات للتمهيد والتقسيم. [ 3 ]

مع ذلك، فإن إدخالات تقسيم MBR ورمز تمهيد MBR المستخدم في أنظمة التشغيل التجارية محدودة بـ 32 بت. [ 1 ] لذا، فإن الحد الأقصى لحجم القرص المدعوم على الأقراص التي تستخدم قطاعات 512 بايت (سواء كانت حقيقية أو محاكاة) بواسطة نظام تقسيم MBR (بدون حسابات 32 بت) يقتصر على 2  تيرابايت. [ 1 ] ونتيجة لذلك، يجب استخدام نظام تقسيم مختلف للأقراص الأكبر حجمًا، نظرًا لانتشارها الواسع منذ عام 2010. وبالتالي، فإن نظام تقسيم MBR في طور الاستبدال بجدول تقسيم GUID (GPT). لا يقدم النهج الرسمي سوى ضمان سلامة البيانات باستخدام MBR وقائي . وعلى وجه التحديد، فهو لا يوفر التوافق مع أنظمة التشغيل التي لا تدعم نظام GPT. في غضون ذلك، قامت جهات خارجية بتصميم وتنفيذ أشكال متعددة من سجلات التمهيد الرئيسية الهجينة (MBRs) بهدف الحفاظ على الأقسام الموجودة في أول 2  تيرابايت من القرص الصلب في كلا نظامي التقسيم "بالتوازي"، أو للسماح لأنظمة التشغيل القديمة بالتمهيد من أقسام GPT أيضًا. وتتسبب الطبيعة غير القياسية الحالية لهذه الحلول في مشاكل توافق متنوعة في بعض الحالات.

يتكون سجل التمهيد الرئيسي (MBR) من 512 بايت أو أكثر موجودة في القطاع الأول من محرك الأقراص.

قد يحتوي على واحد أو أكثر مما يلي:

تقسيم القرص

قدّم نظام التشغيل IBM PC DOS 2.0 FDISKأداةً لإنشاء أقسام MBR وصيانتها. عند تقسيم جهاز تخزين وفقًا لهذا المخطط، يحتوي سجل MBR الخاص به على جدول أقسام يصف مواقع وأحجام وخصائص أخرى للمناطق الخطية التي تُعرف بالأقسام.

قد تحتوي الأقسام نفسها أيضًا على بيانات لوصف مخططات تقسيم أكثر تعقيدًا، مثل سجلات التمهيد الموسعة (EBRs) أو تسميات أقراص BSD أو أقسام بيانات تعريف مدير القرص المنطقي . [ 8 ]

لا يقع سجل التمهيد الرئيسي (MBR) داخل قسم، بل يقع في القطاع الأول من الجهاز (الإزاحة الفيزيائية 0)، قبل القسم الأول. (يُطلق على قطاع التمهيد الموجود على جهاز غير مُقسّم أو داخل قسم مُحدد اسم سجل تمهيد وحدة التخزين ). في حال تشغيل الكمبيوتر لطبقة DDO BIOS أو مدير تمهيد ، قد يتم نقل جدول الأقسام إلى موقع فيزيائي آخر على الجهاز؛ على سبيل المثال، غالبًا ما كان برنامج Ontrack Disk Manager يضع نسخة من محتويات سجل التمهيد الرئيسي الأصلي في القطاع الثاني، ثم يُخفي نفسه عن أي نظام تشغيل أو تطبيق يتم تشغيله لاحقًا، وبالتالي يتم التعامل مع نسخة سجل التمهيد الرئيسي كما لو كانت لا تزال موجودة في القطاع الأول.

تخطيط القطاع

بحسب الاصطلاح، يوجد أربعة إدخالات جدول تقسيم أساسية بالضبط في مخطط جدول تقسيم MBR، على الرغم من أن بعض أنظمة التشغيل وأدوات النظام وسعت هذا إلى خمسة (Advanced Active Partitions (AAP) مع PTS-DOS 6.60 [ 9 ] و DR-DOS 7.07)، أو ثمانية ( AST و NEC MS-DOS 3.x [ 10 ] [ 11 ] بالإضافة إلى Storage Dimensions SpeedStor )، أو حتى ستة عشر إدخالًا (مع Ontrack Disk Manager ).

بنية MBR الكلاسيكية العامة
عنوانوصفالحجم ( بايت )
0x0000(0)منطقة كود Bootstrap446
0x01BE(446)مدخل القسم رقم 1جدول التقسيم (للتقسيمات الأساسية)16
0x01CE(462)مدخل القسم رقم 216
0x01DE(478)مدخل القسم رقم 316
0x01EE(494)مدخل القسم رقم 416
0x01FE(510)0x55توقيع التمهيد [ أ ]2
0x01FF(511)0xAA
الحجم الإجمالي: 446 + 4×16 + 2512

هيكل مفاعل حيوي غشائي حديث قياسي
عنوانوصفالحجم ( بايت )
0x0000(0)منطقة كود Bootstrap (الجزء 1)218
0x00DA(218)0x0000الطابع الزمني للقرص [ 2 ] [ ب ] (اختياري؛ ويندوز 95B/98/98SE/ME (MS-DOS 7.1–8.0). بدلاً من ذلك، يمكن استخدامه كتوقيع مُحمِّل OEM مع NEWLDR)2
0x00DC(220)محرك الأقراص المادي الأصلي ( 0x80- 0xFF)1
0x00DD(221)الثواني (0–59)1
0x00DE(222)الدقائق (0-59)1
0x00DF(223)الساعات (0-23)1
0x00E0(224)منطقة كود Bootstrap (الجزء 2، إدخال الكود في 0x0000)216 (أو 222)
0x01B8(440)توقيع القرص 32 بتتوقيع القرص (اختياري؛ UEFI ، لينكس، عائلة ويندوز NT وأنظمة تشغيل أخرى)4
0x01BC(444)0x0000( 0x5A5Aإذا كانت محمية ضد النسخ )2
0x01BE(446)مدخل القسم رقم 1جدول التقسيم (للتقسيمات الأساسية)16
0x01CE(462)مدخل القسم رقم 216
0x01DE(478)مدخل القسم رقم 316
0x01EE(494)مدخل القسم رقم 416
0x01FE(510)0x55توقيع التمهيد [ أ ]2
0x01FF(511)0xAA
الحجم الإجمالي: 218 + 6 + 216 + 6 + 4×16 + 2512

هيكل AAP MBR
عنوانوصفالحجم ( بايت )
0x0000(0)منطقة كود Bootstrap428
0x01AC(428)0x78توقيع AAP (اختياري)2
0x01AD(429)0x56
0x01AE(430)محرك أقراص AAP الفعلي ( 0x800xFE; 0x00: غير مستخدم؛ 0x010x7F, 0xFF: محجوز)سجل AAP (اختياري) ( إدخال قسم AAP رقم 0 بدلالات خاصة)1
0x01AF(431)عنوان CHS (البداية) لملف قسم/صورة AAP أو VBR / EBR3
0x01B2(434)محجوز لنوع قسم AAP ( 0x00إذا لم يتم استخدامه) (اختياري)1
0x01B3(435)محجوز لعنوان نهاية CHS في AAP (اختياري؛ 0x01B5يتم استخدام البايت عند الإزاحة أيضًا لمجموع التحقق MBR (PTS DE، BootWizard)؛ 0x000000إذا لم يتم استخدامه)3
0x01B6(438)ابدأ LBA لملف صورة AAP أو VBR / EBR أو القطاعات النسبية لقسم AAP (يتم نسخها إلى الإزاحة في القطاع المحمل فوق إدخال "القطاعات المخفية" لـ DOS 3.31 BPB (أو محاكاته) لدعم التمهيد EBR أيضًا)+01Chex4
0x01BA(442)مخصص للقطاعات في برنامج AAP (اختياري؛ 0x00000000في حالة عدم استخدامه)4
0x01BE(446)مدخل القسم رقم 1جدول التقسيم (للتقسيمات الأساسية)16
0x01CE(462)مدخل القسم رقم 216
0x01DE(478)مدخل القسم رقم 316
0x01EE(494)مدخل القسم رقم 416
0x01FE(510)0x55توقيع التمهيد [ أ ]2
0x01FF(511)0xAA
الحجم الإجمالي: 428 + 2 + 16 + 4×16 + 2512

هيكل مفاعل نيولدر الغشائي
عنوانوصفالحجم ( بايت )
0x0000(0)JMPS( ) / NEWLDR حجم السجل (غالبًا / / لبداية الكود عند / / )EBhex0x0A0x160x1C0x000C0x00180x001Eسجل NEWLDR (اختياري)2
0x0002(2)" NEWLDR" إمضاء6
0x0008(8)محرك الأقراص الفعلي وعلامة التمهيد ( 0x800xFE, 0x000x7E, 0xFF, 0x7F) (إذا لم يتم استخدامها، فيجب أن تكون هذه البايتات الثلاثة التالية جميعها 0)1
0x0009(9)عنوان CHS لقطاع التمهيد أو ملف الصورة الخاص بـ LOADER (مثل IBMBIO.LDR ) ( 0x000000إذا لم يتم استخدامه)3
0x000C(12)الحد الأدنى المسموح به لـ DL ، وإلا يتم أخذه من جدول التقسيم ( 0x80: افتراضي؛ 0x00: استخدام DL دائمًا؛ 0xFF: استخدام إدخال الجدول دائمًا)1
0x000D(13)محجوز (افتراضي: 0x000000)3
0x0010(16)LBA لقطاع التمهيد الخاص بـ LOADER أو ملف الصورة (اختياري؛ 0x00000000إذا لم يتم استخدامه)4
0x0014(20)إزاحة التصحيح لوحدة تمهيد VBR (افتراضي 0x0000إذا لم يتم استخدامه، وإلا أو )0024hex01FDhex2
0x0016(22)مجموع التحقق ( 0x0000إن لم يُستخدم)2
0x0018(24)توقيع مُحمِّل OEM (" MSWIN4" لـ REAL/32 ، انظر أيضًا الإزاحة ، يتوافق مع ملصق OEM عند الإزاحة في VBRs (اختياري)+0DAhex+003hex6
يختلفمنطقة كود Bootstrap (إدخال الكود في 0x0000)يختلف
0x01AC(428)0x78توقيع AAP (اختياري)2
0x01AD(429)0x56
0x01AE(430)مدخل قسم AAP رقم 0 بدلالات خاصةسجل برنامج المساعدة الأكاديمية (اختياري)16
0x01BE(446)مدخل القسم رقم 1جدول التقسيم (للتقسيمات الأساسية)16
0x01CE(462)مدخل القسم رقم 216
0x01DE(478)مدخل القسم رقم 316
0x01EE(494)مدخل القسم رقم 416
0x01FE(510)0x55توقيع التمهيد [ أ ]2
0x01FF(511)0xAA
الحجم الإجمالي: 30 + 398 + 2 + 16 + 4×16 + 2512

بنية نظام التشغيل AST/NEC MS-DOS وذاكرة التخزين المؤقتة الرئيسية SpeedStor
عنوانوصفالحجم ( بايت )
0x0000(0)منطقة كود Bootstrap380
0x017C(380)0x5Aتوقيع AST/NEC (اختياري؛ غير مخصص لـ SpeedStor)2
0x017D(381)0xA5
0x017E(382)مدخل القسم رقم 8جدول تقسيم موسع AST/NEC (اختياري؛ ينطبق أيضًا على SpeedStor)16
0x018E(398)مدخل القسم رقم 716
0x019E(414)مدخل القسم رقم 616
0x01AE(430)مدخل القسم رقم 516
0x01BE(446)مدخل القسم رقم 4جدول التقسيم (للتقسيمات الأساسية)16
0x01CE(462)مدخل القسم رقم 316
0x01DE(478)مدخل القسم رقم 216
0x01EE(494)مدخل القسم رقم 116
0x01FE(510)0x55توقيع التمهيد [ أ ]2
0x01FF(511)0xAA
الحجم الإجمالي: 380 + 2 + 4×16 + 4×16 + 2512

بنية برنامج إدارة الأقراص Ontrack MBR
عنوانوصفالحجم ( بايت )
0x0000(0)منطقة كود Bootstrap252
0x00FC(252)0xAAتوقيع الرسالة الخاصة (اختياري)2
0x00FD(253)0x55
0x00FE(254)مدخل التقسيمجدول تقسيم موسع DM (اختياري)16
0x010E(270)مدخل التقسيم16
0x011E(286)مدخل التقسيم16
0x012E(302)مدخل التقسيم16
0x013E(318)مدخل التقسيم16
0x014E(334)مدخل التقسيم16
0x015E(350)مدخل التقسيم16
0x016E(366)مدخل التقسيم16
0x017E(382)مدخل التقسيم16
0x018E(398)مدخل التقسيم16
0x019E(414)مدخل التقسيم16
0x01AE(430)مدخل التقسيم16
0x01BE(446)مدخل القسم رقم 1جدول التقسيم (للتقسيمات الأساسية)16
0x01CE(462)مدخل القسم رقم 216
0x01DE(478)مدخل القسم رقم 316
0x01EE(494)مدخل القسم رقم 416
0x01FE(510)0x55توقيع التمهيد [ أ ]2
0x01FF(511)0xAA
الحجم الإجمالي: 252 + 2 + 12×16 + 4×16 + 2512

إدخالات جدول التقسيم

تخطيط إدخال قسم واحد بحجم 16 بايت [ 12 ] (جميع الحقول متعددة البايتات هي little-endian )
الإزاحة (بايت)طول المجالوصف
0x001  بايتحالة أو محرك الأقراص الفعلي (البت 7 مضبوط للتشغيل أو قابل للتمهيد، سجلات التمهيد الرئيسية القديمة تقبل فقط 0x80 ، 0x00 تعني غير نشط، و 0x01 - 0x7F تعني غير صالح) [ ج ]
0x013  بايتعنوان CHS للقطاع المطلق الأول في القسم. [ د ] يتم وصف التنسيق بثلاثة بايتات، انظر الأسطر الثلاثة التالية.
0x011  بايت
ح 7 0رأس [ هـ ]
xxxxxxxx
0x021  بايت
ج 9 85 0القطاع في البتات 5 0؛ البتات 7 6 هي البتات العليا للأسطوانة [ هـ ]
xxxxxxxx
0x031  بايت
ج 7 0البتات 7 0 من الأسطوانة [ هـ ]
xxxxxxxx
0x041  بايتنوع التقسيم [ 14 ]
0x053  بايتعنوان CHS للقطاع المطلق الأخير في القسم. [ د ] يتم وصف التنسيق بواسطة 3 بايتات، انظر الأسطر الثلاثة التالية.
0x051  بايت
ح 7 0رأس [ هـ ]
xxxxxxxx
0x061  بايت
ج 9 85 0القطاع في البتات 5 0؛ البتات 7 6 هي البتات العليا للأسطوانة [ هـ ]
xxxxxxxx
0x071  بايت
ج 7 0البتات 7 0 من الأسطوانة
xxxxxxxx
0x084  بايتLBA للقطاع المطلق الأول في التقسيم [ f ]
0x0C4  بايتعدد القطاعات في التقسيم [ g ]

يُعدّ جدول التقسيم من مخلفات تقنية الأقراص الصلبة في عصر حاسوب PC XT ، حيث يقسم وسيط التخزين باستخدام وحدات الأسطوانات والرؤوس والقطاعات ( عنونة CHS ). لم تعد هذه القيم تُستخدم في محركات الأقراص الحديثة، كما أنها غير ذات صلة في أجهزة أخرى مثل محركات الحالة الصلبة ، التي لا تحتوي فعليًا على أسطوانات أو رؤوس .

في نظام CHS، تبدأ مؤشرات القطاعات (تقريبًا) دائمًا بالقطاع 1 بدلًا من القطاع 0 وفقًا للعرف، وبسبب خطأ في جميع إصدارات MS-DOS/PC DOS حتى الإصدار 7.10 ، يقتصر عدد الرؤوس عمومًا على 255 رأسًا بدلًا من 256. عندما يكون عنوان CHS كبيرًا جدًا بحيث لا يتسع في هذه الحقول، يُستخدم عادةً الزوج (1023، 254، 63) اليوم، على الرغم من أنه في الأنظمة القديمة، ومع أدوات القرص القديمة، غالبًا ما تلتف قيمة الأسطوانة حول حاجز CHS بالقرب من 8 جيجابايت، مما يتسبب في غموض ومخاطر تلف البيانات. (إذا كان الوضع يتضمن سجل التمهيد الرئيسي "الوقائي" على قرص ذي جدول تقسيم عام، فإن مواصفات واجهة البرامج الثابتة القابلة للتوسيع من إنتل تتطلب استخدام المجموعة (1023، 255، 63).) يتم تسجيل قيمة الأسطوانة ذات 10 بتات ضمن بايتين لتسهيل استدعاء إجراءات الوصول إلى القرص في نظام الإدخال والإخراج الأساسي INT 13h الأصلي/القديم ، حيث كانت 16 بتًا مقسمة إلى أجزاء قطاع وأسطوانة، وليس على حدود البايت. [ 13 ]

نظراً لقيود عنونة CHS، [ 16 ] [ 17 ] تم الانتقال إلى استخدام عنونة الكتل المنطقية (LBA ). يُخزَّن كلٌّ من طول القسم وعنوان بدايته كقيم قطاعية في مدخلات جدول الأقسام كقيم 32 بت. كان حجم القطاع يُعتبر ثابتاً عند 512 بايت (2^ 9 )، وقد تم ترميز هذه القيمة مسبقاً في مجموعة واسعة من المكونات المهمة، بما في ذلك الشرائح ، وقطاعات الإقلاع ، وأنظمة التشغيل ، ومحركات قواعد البيانات ، وأدوات التقسيم ، وبرامج النسخ الاحتياطي ، وأنظمة الملفات ، وغيرها من البرامج. منذ نهاية عام 2009، أصبحت محركات الأقراص التي تستخدم قطاعات بحجم 4096 بايت ( 4Kn أو التنسيق المتقدم ) متاحة، على الرغم من أن حجم القطاع لبعض هذه المحركات كان لا يزال يُبلَّغ عنه للنظام المضيف على أنه 512 بايت من خلال التحويل في البرامج الثابتة لمحرك الأقراص، ويُشار إليها باسم محركات محاكاة 512 ( 512e ).

بما أن عناوين الكتل وأحجامها تُخزن في جدول تقسيم سجل التمهيد الرئيسي (MBR) باستخدام 32 بت، فإن الحد الأقصى لحجم القسم، بالإضافة إلى أعلى عنوان بداية له، باستخدام محركات أقراص ذات قطاعات بحجم 512 بايت (فعلية أو محاكاة) لا يمكن أن يتجاوز 2 تيرابايت - 512 بايت (2,199,023,255,040 بايت أو4294967295 ( 232-1 ) قطاعًا ×  512 (29 ) بايت لكل قطاع). [ 1 ] كان تخفيف هذا القيد في السعة أحد الدوافع الرئيسية لتطوير GPT.

بما أن معلومات التقسيم تُخزَّن في جدول تقسيم MBR باستخدام عنوان كتلة البداية وطولها، فمن الممكن نظريًا تعريف الأقسام بحيث تُعطي المساحة المُخصصة لقرص ذي قطاعات 512 بايت حجمًا إجماليًا يقارب 4 تيرابايت، إذا كانت جميع الأقسام باستثناء قسم واحد تقع أسفل  حد 2 تيرابايت، وتم تخصيص القسم الأخير ليبدأ من الكتلة 2 ^32 - 1 أو بالقرب منها، وتم تحديد حجمه حتى 2 ^ 32 - 1، مما يُعرِّف قسمًا يتطلب 33 بتًا بدلًا من 32 بتًا للوصول إلى عنوان القطاع. مع ذلك، عمليًا، تدعم بعض أنظمة التشغيل المُفعَّلة بتقنية LBA-48 فقط ، بما في ذلك Linux وFreeBSD وWindows 7 [ 18 ] التي تستخدم عناوين قطاعات 64 بت داخليًا، هذه الميزة. نظراً لقيود مساحة التعليمات البرمجية وطبيعة جدول تقسيم سجل التمهيد الرئيسي (MBR) الذي يدعم 32 بت فقط، فإن قطاعات التمهيد، حتى وإن كانت تدعم LBA-48 بدلاً من LBA-28 ، غالباً ما تستخدم حسابات 32 بت، ما لم تكن مصممة خصيصاً لدعم نطاق عناوين LBA-48 الكامل أو مخصصة للعمل على منصات 64 بت فقط. أي رمز تمهيد أو نظام تشغيل يستخدم عناوين قطاعات 32 بت داخلياً سيؤدي إلى التفاف العناوين حول الوصول إلى هذا القسم، مما ينتج عنه تلف خطير للبيانات في جميع الأقسام.

بالنسبة للأقراص التي تستخدم أحجام قطاعات مختلفة عن 512 بايت، مثل محركات الأقراص الخارجية USB ، توجد قيود أيضًا. يؤدي حجم قطاع 4096 بايت إلى زيادة حجم القسم الذي يمكن تعريفه باستخدام سجل التمهيد الرئيسي (MBR) بمقدار ثمانية أضعاف، مما يسمح بأقسام يصل حجمها إلى 16 تيرابايت (2 ^32 × 4096 بايت). [ 19 ] تدعم إصدارات Windows الأحدث من Windows XP أحجام القطاعات الأكبر، وكذلك Mac OS X، كما يدعم Linux أحجام القطاعات الأكبر منذ الإصدار 2.6.31 [ 20 ] أو 2.6.32، [ 21 ] ولكن توجد بعض القيود المتعلقة ببرامج الإقلاع وأدوات تقسيم القرص وتطبيقات BIOS في أجهزة الكمبيوتر، [ 22 ] نظرًا لأنها غالبًا ما تكون مُبرمجة مسبقًا لحجز 512 بايت فقط لمخازن القطاعات، مما يؤدي إلى الكتابة فوق البيانات الموجودة في الذاكرة عند استخدام أحجام قطاعات أكبر. قد يتسبب هذا أيضًا في سلوك غير متوقع، ولذلك يجب تجنبه عند مراعاة التوافق والامتثال للمعايير.   

عندما يتم تقسيم جهاز تخزين البيانات باستخدام مخطط GPT، سيظل سجل التمهيد الرئيسي يحتوي على جدول تقسيم، ولكن الغرض الوحيد منه هو الإشارة إلى وجود GPT ومنع برامج الأدوات المساعدة التي تفهم فقط مخطط جدول تقسيم MBR من إنشاء أي أقسام فيما قد تعتبره مساحة حرة على القرص، وبالتالي مسح GPT عن طريق الخطأ.

تهيئة النظام

في أجهزة الكمبيوتر المتوافقة مع IBM PC ، يقوم برنامج التمهيد الثابت (الموجود داخل ذاكرة القراءة فقط BIOS ) بتحميل وتنفيذ سجل التمهيد الرئيسي (MBR). [ 23 ] استخدم جهاز PC/XT (النوع 5160) معالج Intel 8088. ولضمان التوافق، تبدأ جميع أنظمة بنية x86 BIOS بتشغيل المعالج في وضع التشغيل الحقيقي . يقرأ BIOS سجل التمهيد الرئيسي من وحدة التخزين إلى الذاكرة الفعلية ، ثم يوجه المعالج إلى بداية رمز التمهيد. يقوم BIOS بتحويل المعالج إلى الوضع الحقيقي، ثم يبدأ بتنفيذ برنامج سجل التمهيد الرئيسي، ولذلك من المتوقع أن تحتوي بداية سجل التمهيد الرئيسي على رمز الآلة الخاص بالوضع الحقيقي . [ 23 ]

بما أن روتين تمهيد BIOS يقوم بتحميل وتشغيل قطاع واحد فقط من القرص الفعلي، فإن وجود جدول الأقسام في سجل التمهيد الرئيسي (MBR) مع رمز التمهيد يُبسط تصميم برنامج MBR. يحتوي هذا البرنامج على برنامج صغير يقوم بتحميل سجل تمهيد وحدة التخزين (VBR) للقسم المستهدف. ثم يتم تمرير التحكم إلى هذا الرمز، المسؤول عن تحميل نظام التشغيل الفعلي. تُعرف هذه العملية باسم التحميل المتسلسل .

تم إنشاء برامج شائعة لرمز MBR لتشغيل أنظمة PC DOS و MS-DOS ، ولا يزال رمز الإقلاع المماثل مستخدمًا على نطاق واسع. تتوقع قطاعات الإقلاع هذه FDISKأن يكون مخطط جدول التقسيم قيد الاستخدام، وتقوم بفحص قائمة الأقسام في جدول التقسيم المضمن في MBR للعثور على القسم الوحيد الذي يحمل علامة " نشط" . [ 24 ] ثم تقوم بتحميل وتشغيل سجل إقلاع وحدة التخزين (VBR) للقسم النشط.

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

في الأجهزة التي لا تستخدم معالجات x86 ، أو في أجهزة x86 التي تعمل ببرامج ثابتة غير BIOS مثل البرامج الثابتة المفتوحة أو واجهة البرامج الثابتة القابلة للتوسيع (EFI)، يكون هذا التصميم غير مناسب، ولا يُستخدم سجل التمهيد الرئيسي (MBR) كجزء من عملية تمهيد النظام. [ 25 ] بدلاً من ذلك، تستطيع البرامج الثابتة EFI فهم مخطط تقسيم GPT ونظام ملفات FAT مباشرةً ، وتقوم بتحميل وتشغيل البرامج المخزنة كملفات في قسم نظام EFI . [ 26 ] ولن يُستخدم سجل التمهيد الرئيسي (MBR) إلا في حال احتوائه على جدول تقسيم لأغراض التوافق إذا تم استخدام مخطط جدول تقسيم GPT.

يوجد رمز بديل لـ MBR يحاكي عملية الإقلاع في البرامج الثابتة EFI، مما يجعل الأجهزة غير المتوافقة مع EFI قادرة على الإقلاع من الأقراص باستخدام نظام تقسيم GPT. يقوم هذا الرمز بالكشف عن GPT، ووضع المعالج في وضع التشغيل الصحيح، وتحميل الرمز المتوافق مع EFI من القرص لإتمام هذه المهمة.

هوية القرص

لقطة شاشة لبرنامج KDE Partition Manager 25.12.1 تُظهر سجل التمهيد الرئيسي (MBR) لمحرك أقراص صلبة خارجي
المعلومات الموجودة في جدول تقسيم القرص الصلب الخارجي كما تظهر في برنامج KDE Partition Manager ، الذي يعمل تحت نظام Linux

بالإضافة إلى رمز التمهيد وجدول التقسيم، قد تحتوي سجلات التمهيد الرئيسية على توقيع القرص . هذه قيمة 32 بت تهدف إلى تحديد وسيط القرص بشكل فريد (على عكس وحدة القرص - حيث لا يكون الاثنان بالضرورة متطابقين بالنسبة للأقراص الصلبة القابلة للإزالة).

تم تقديم توقيع القرص في نظام التشغيل ويندوز إن تي الإصدار 3.5، ولكنه يُستخدم الآن في العديد من أنظمة التشغيل، بما في ذلك نواة لينكس الإصدار 2.6 والإصدارات الأحدث. تستطيع أدوات لينكس استخدام توقيع قرص ويندوز إن تي لتحديد القرص الذي تم الإقلاع منه. [ 27 ]

يستخدم نظام التشغيل Windows NT (وأنظمة تشغيل Microsoft اللاحقة) توقيع القرص كدليل لجميع الأقسام على أي قرص تم توصيله بالكمبيوتر الذي يعمل بنظام التشغيل هذا؛ تُحفظ هذه التوقيعات في مفاتيح سجل Windows ، وذلك بشكل أساسي لتخزين الربط الدائم بين أقسام القرص وأحرف محركات الأقراص. قد يُستخدم أيضًا في ملفات BOOT.INI الخاصة بنظام Windows NT (على الرغم من أن معظمها لا يستخدمها)، لوصف موقع أقسام Windows NT (أو أحدث) القابلة للتشغيل. [ 28 ] أحد المفاتيح (من بين العديد) التي تظهر فيها توقيعات أقراص NT في سجل Windows 2000/XP هو:

HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices\

إذا كانت بصمة القرص المخزنة في سجل التمهيد الرئيسي (MBR) هي A8 E1 B9 D2 (بهذا الترتيب) وكان قسمه الأول مطابقًا لمحرك الأقراص المنطقي C: في نظام التشغيل Windows، فإن البيانات الموجودة تحت قيمة المفتاح ستكون كالتالي:REG_BINARY\DosDevices\C:

A8 E1 B9 D2 00 7E 00 00 00 00 00 00

تُسمى البايتات الأربعة الأولى بتوقيع القرص. (في مفاتيح أخرى، قد تظهر هذه البايتات بترتيب عكسي عن ترتيبها في قطاع سجل التمهيد الرئيسي). يليها ثمانية بايتات أخرى، تُشكل عددًا صحيحًا من 64 بت، بتنسيق little-endian ، وتُستخدم لتحديد إزاحة البايت لهذا القسم. في هذه الحالة، يُقابل 00 7E القيمة السداسية العشرية 0x7E00 (32256 ). بافتراض أن محرك الأقراص المعني يبلغ عن حجم قطاع يبلغ 512 بايت، فإن قسمة إزاحة البايت هذه على 512 ينتج عنها 63، وهو رقم القطاع الفعلي (أو LBA) الذي يحتوي على القطاع الأول من القسم (على عكس عدد القطاعات المستخدم في قيمة قطاعات CHS tuples، والذي يبدأ العد من واحد ، فإن القيمة المطلقة أو قيمة قطاع LBA تبدأ العد من الصفر ).

إذا كان لهذا القرص قسم آخر بالقيم 00 F8 93 71 02 بعد توقيع القرص (تحت، على سبيل المثال، قيمة المفتاح )، فسيبدأ عند إزاحة البايت 0x00027193F800 (\DosDevices\D:10,495,457,280 )، وهو أيضًا البايت الأول من القطاع المادي20,498,940

ابتداءً من نظام التشغيل Windows Vista ، تُخزَّن بصمة القرص أيضًا في مخزن بيانات تكوين التمهيد (BCD)، وتعتمد عملية التمهيد عليها. [ 29 ] إذا تغيرت بصمة القرص، أو تعذر العثور عليها، أو حدث تعارض، فلن يتمكن Windows من التمهيد. [ 30 ] ما لم يُجبر Windows على استخدام الجزء المتداخل من عنوان LBA لإدخال القسم النشط المتقدم كبصمة قرص وهمية، فإن استخدام Windows يتعارض مع ميزة القسم النشط المتقدم في PTS-DOS 7 وDR-DOS 7.07، خاصةً إذا كان رمز التمهيد الخاص بهما موجودًا خارج أول 8  جيجابايت من القرص، مما يستدعي استخدام عناوين LBA.

اعتبارات البرمجة

نشأ سجل التمهيد الرئيسي (MBR) في جهاز الكمبيوتر الشخصي XT . [ 31 ] تستخدم أجهزة الكمبيوتر المتوافقة مع IBM PC نظام الترتيب الصغير (little-endian ) ، مما يعني أن المعالج يخزن القيم الرقمية التي تمتد على بايتين أو أكثر في الذاكرة، بدءًا من البايت الأقل أهمية . يعكس تنسيق سجل التمهيد الرئيسي على الوسائط هذا الترتيب. وبالتالي، سيظهر توقيع سجل التمهيد الرئيسي في محرر الأقراص على شكل التسلسل التالي 55 AA: [ أ ]

تقوم عملية التمهيد في نظام الإدخال والإخراج الأساسي (BIOS) بتحميل أول سجل تمهيد رئيسي (MBR) صالح تجده في الذاكرة الفعلية للحاسوب عند العنوان من 0x7C00 إلى 0x7DFF . [ 31 ] آخر تعليمة تُنفذ في كود BIOS هي "قفزة" إلى ذلك العنوان لتوجيه التنفيذ إلى بداية نسخة MBR. التحقق الأساسي لمعظم أنظمة BIOS هو التوقيع عند الإزاحة 0x01FE ، مع العلم أن مُصمم BIOS قد يختار تضمين فحوصات أخرى، مثل التحقق من احتواء MBR على جدول تقسيم صالح دون إدخالات تشير إلى قطاعات تتجاوز السعة المُبلغ عنها للقرص.

بالنسبة لنظام الإدخال والإخراج الأساسي (BIOS)، تُعتبر الأقراص القابلة للإزالة (مثل الأقراص المرنة) والأقراص الثابتة متطابقة تقريبًا. ففي كلتا الحالتين، يقرأ نظام الإدخال والإخراج الأساسي القطاع الفيزيائي الأول من القرص إلى ذاكرة الوصول العشوائي (RAM) عند العنوان المطلق 0x7C00 ، ويتحقق من التوقيع في آخر بايتين من القطاع المُحمّل، ثم إذا وُجد التوقيع الصحيح، ينقل التحكم إلى البايت الأول من القطاع باستخدام تعليمة القفز (JMP). والفرق الحقيقي الوحيد الذي يُجريه نظام الإدخال والإخراج الأساسي هو أنه (افتراضيًا، أو إذا لم يكن ترتيب الإقلاع قابلًا للتكوين) يحاول الإقلاع من أول قرص قابل للإزالة قبل محاولة الإقلاع من أول قرص ثابت. من منظور نظام الإدخال والإخراج الأساسي، فإن عملية تحميل سجل إقلاع وحدة التخزين (MBR) إلى ذاكرة الوصول العشوائي هي نفسها تمامًا عملية تحميل سجل إقلاع وحدة تخزين القرص المرن لرمز كائن مُحمّل نظام التشغيل إلى ذاكرة الوصول العشوائي. في كلتا الحالتين، يقوم البرنامج الذي حمّله نظام الإدخال والإخراج الأساسي بعملية تحميل نظام التشغيل بشكل متسلسل.

بينما يتوقع رمز قطاع التمهيد MBR أن يتم تحميله عند العنوان الفعلي 0x0000 : 0x7C00 ، [ i ] كل الذاكرة من العنوان الفعلي 0x0000 : 0x0501 (العنوان 0x0000 : 0x0500 هو آخر عنوان يستخدمه Phoenix BIOS) [ 13 ] إلى 0x0000 : 0x7FFF ، [ 31 ] ثم يتم توسيعها لاحقًا إلى 0x0000 : 0xFFFF [ 32 ] (وأحيانًا [ j ] حتى 0x9000 : 0xFFFF ) نهاية أول 640 كيلوبايت ‌ متاحة في الوضع الحقيقي . [ k ] قد يساعد استدعاء مقاطعة BIOS في تحديد مقدار الذاكرة التي يمكن تخصيصها بأمان (افتراضيًا، يقرأ ببساطة حجم الذاكرة الأساسي بالكيلوبايت من المقطع : موقع الإزاحة 0x0040 : 0x0013 ، ولكن قد يتم اعتراضه بواسطة برامج أخرى موجودة قبل بدء التشغيل مثل تراكبات BIOS أو رمز RPL أو الفيروسات لتقليل مقدار الذاكرة المتاحة المبلغ عنها من أجل منع برامج مرحلة التمهيد الأخرى مثل قطاعات التمهيد من الكتابة فوقها).INT 12h

يتم حجز آخر 66  بايت من MBR البالغ 512 بايت لجدول الأقسام والمعلومات الأخرى، لذلك يجب أن يكون برنامج قطاع التمهيد MBR صغيرًا بما يكفي ليناسب 446  بايت من الذاكرة أو أقل.

يقوم رمز سجل التمهيد الرئيسي (MBR) بفحص جدول الأقسام، واختيار قسم مناسب، ثم تحميل البرنامج الذي سينفذ المرحلة التالية من عملية التمهيد، وذلك عادةً باستخدام استدعاءات BIOS  من نوع INT 13h . يقوم رمز التمهيد الخاص بـ MBR بتحميل وتشغيل رمز سجل تمهيد وحدة التخزين (الذي يعتمد على مُحمِّل التمهيد أو نظام التشغيل) الموجود في بداية القسم "النشط". يتناسب سجل تمهيد وحدة التخزين مع قطاع بحجم 512 بايت، ولكن من الآمن لرمز MBR تحميل قطاعات إضافية لاستيعاب مُحمِّلات التمهيد التي يزيد حجمها عن قطاع واحد، شريطة ألا يفترض أي شيء بشأن حجم القطاع. في الواقع، يتوفر ما لا يقل عن 1 كيلوبايت من ذاكرة الوصول العشوائي (RAM) على العنوان 0x7C00 في جميع أجهزة IBM من فئتي XT وAT، لذا يمكن استخدام قطاع بحجم 1 كيلوبايت دون أي مشكلة. ومثل MBR، يتوقع سجل تمهيد وحدة التخزين عادةً أن يتم تحميله على العنوان 0x0000 : 0x7C00 . ينبع هذا من حقيقة أن تصميم سجل تمهيد وحدة التخزين نشأ على وسائط غير مقسمة، حيث يتم تحميل سجل تمهيد وحدة التخزين مباشرةً بواسطة إجراء تمهيد BIOS؛ وكما ذُكر أعلاه، يتعامل BIOS مع سجلات التمهيد الرئيسية (MBRs) وسجلات تمهيد وحدة التخزين (VBRs) بنفس الطريقة تمامًا. وبما أن هذا هو نفس الموقع الذي يتم فيه تحميل MBR، فإن إحدى أولى مهام MBR هي نقل نفسه إلى مكان آخر في الذاكرة. يتم تحديد عنوان النقل بواسطة MBR، ولكنه غالبًا ما يكون 0x0000 : 0x0600 (لبرامج MS-DOS/PC DOS وOS/2 وWindows MBR) أو 0x0060 : 0x0000 (معظم سجلات DR-DOS MBR). (على الرغم من أن كلا العنوانين المجزأين يشيران إلى نفس عنوان الذاكرة الفعلي في الوضع الحقيقي، إلا أنه لكي يتمكن نظام Apple Darwin من الإقلاع، يجب نقل سجل التمهيد الرئيسي (MBR) إلى 0x0000 : 0x0600 بدلاً من 0x0060 : 0x0000 ، لأن البرنامج يعتمد على مؤشر DS:SI إلى مدخل القسم الذي يوفره سجل التمهيد الرئيسي، ولكنه يشير إليه خطأً عبر 0x0000 :SI فقط. [ 33 ] ) من المهم عدم نقل سجل التمهيد الرئيسي إلى عناوين أخرى في الذاكرة لأن العديد من سجلات التمهيد الافتراضية (VBRs) تفترض تخطيط ذاكرة قياسيًا معينًا عند تحميل ملف الإقلاع الخاص بها.  

يُستخدم حقل الحالة في سجل جدول التقسيم للإشارة إلى وجود قسم نشط. تسمح سجلات MBR المتوافقة مع المعايير بوجود قسم واحد فقط مُحدد كقسم نشط، وتستخدمه كجزء من فحص التحقق من صحة جدول التقسيم. ستعرض هذه السجلات رسالة خطأ في حال تم تحديد أكثر من قسم واحد كقسم نشط. أما بعض سجلات MBR غير المتوافقة مع المعايير، فلا تعتبر ذلك خطأً، بل تستخدم القسم الأول المُحدد في الصف.

تقليديًا، كانت القيم الأخرى غير 0x00 (غير نشط) و 0x80 (نشط) غير صالحة، وكان برنامج الإقلاع يعرض رسالة خطأ عند مصادفتها. مع ذلك، سمحت مواصفات BIOS للتوصيل والتشغيل ومواصفات إقلاع BIOS (BBS) لأجهزة أخرى بالإقلاع منها أيضًا منذ عام 1994. [ 32 ] [ 34 ] ونتيجة لذلك، مع إصدار MS-DOS 7.10 (Windows 95B) والإصدارات الأحدث، بدأ سجل الإقلاع الرئيسي (MBR) في التعامل مع البت 7 المُفعّل كعلامة نشطة، وعرض رسالة خطأ للقيم من 0x01 إلى 0x7F فقط. واستمر في التعامل مع الإدخال كوحدة محرك أقراص فعلية تُستخدم عند تحميل سجل الإقلاع الافتراضي (VBR) للقسم المقابل لاحقًا، وبالتالي أصبح يقبل الآن محركات إقلاع أخرى غير 0x80 كقيم صالحة، إلا أن MS-DOS لم يستخدم هذا الامتداد بشكل مستقل. لا يُسبب تخزين رقم القرص الفعلي في جدول التقسيم عادةً مشاكل في التوافق مع الإصدارات السابقة، لأن القيمة ستختلف عن 0x80 فقط على الأقراص الأخرى غير القرص الأول (الذي لم يكن قابلاً للإقلاع منه سابقًا). مع ذلك، حتى مع الأنظمة المُمكّنة للإقلاع من أقراص أخرى، قد لا يعمل التوسيع بشكل عام، على سبيل المثال، بعد تغيير تعيين BIOS للأقراص الفعلية عند إزالة الأقراص أو إضافتها أو استبدالها. لذلك، ووفقًا لمواصفات إقلاع BIOS (BBS) [ 32 ] ، يُفضّل أن يقوم سجل التمهيد الرئيسي (MBR) الحديث الذي يقبل البت 7 كعلامة نشطة بتمرير قيمة DL المُقدمة أصلاً من BIOS بدلاً من استخدام الإدخال الموجود في جدول التقسيم.

واجهة BIOS إلى MBR

يتم تحميل سجل التمهيد الرئيسي (MBR) في موقع الذاكرة 0x0000 : 0x7C00 مع إعداد سجلات وحدة المعالجة المركزية التالية عندما يقوم برنامج تحميل التمهيد السابق (عادةً IPL في BIOS) بتمرير التنفيذ إليه عن طريق القفز إلى 0x0000 : 0x7C00 في الوضع الحقيقي لوحدة المعالجة المركزية .

  • CS : IP = 0x0000 : 0x7C00 (ثابت)
تستخدم بعض أنظمة BIOS من Compaq بشكل خاطئ النطاق 0x07C0 : 0x0000 بدلاً من ذلك. ورغم أن هذا يشير إلى نفس الموقع في ذاكرة الوضع الحقيقي، إلا أنه غير قياسي ويجب تجنبه، لأن كود MBR الذي يفترض قيم سجلات معينة أو غير قابل للكتابة بحيث يمكن نقله قد لا يعمل في غير هذه الحالة.
يدعم نظام BIOS من IBM، بالإضافة إلى معظم أنظمة BIOS الأخرى، خاصية DL. من المعروف أن نظام BIOS الخاص بجهاز Toshiba T1000 لا يدعمها بشكل صحيح، وتستخدم بعض أنظمة BIOS القديمة لجهاز Wyse 286 قيم DL أكبر من أو تساوي 2 للأقراص الثابتة (مما يعكس أرقام محركات الأقراص المنطقية في نظام DOS بدلاً من أرقام محركات الأقراص الفعلية في نظام BIOS). عادةً ما تحصل ذاكرات USB المُهيأة كمحركات أقراص قابلة للإزالة على قيمة DL = 0x80 أو 0x81 ، وما إلى ذلك. مع ذلك، عرضتها بعض أنظمة BIOS النادرة بشكل خاطئ تحت قيمة DL = 0x01 ، كما لو كانت مُهيأة كأقراص مرنة فائقة.
يُخصص نظام BIOS المتوافق مع المعايير أرقامًا أكبر من أو تساوي 0x80 حصريًا للأقراص الثابتة/محركات الأقراص القابلة للإزالة، وكان يتم تمرير القيمتين 0x80 و 0x00 فقط كوحدات أقراص فعلية أثناء بدء التشغيل. وبحسب الاصطلاح، تُقسّم الأقراص الثابتة/محركات الأقراص القابلة للإزالة فقط، وبالتالي، كانت قيمة DL الوحيدة التي يمكن أن يراها سجل التمهيد الرئيسي (MBR) تقليديًا هي 0x80 . مع ذلك، كُتبت العديد من سجلات التمهيد الرئيسية (MBR) لتجاهل قيمة DL والعمل بقيمة ثابتة (عادةً 0x80 ).
تسمح مواصفات BIOS للتوصيل والتشغيل ومواصفات إقلاع BIOS (BBS) لأجهزة أخرى بالإقلاع منها منذ عام 1994. [ 32 ] [ 34 ] وتوصي الأخيرة باستخدام DL بدلاً من الإعدادات الافتراضية المدمجة في MBR وVBR. [ 32 ] وهذا يضمن أيضًا التوافق مع مختلف التعيينات غير القياسية (انظر الأمثلة أعلاه)، فيما يتعلق برمز MBR.
قد تحتوي أقراص CD-ROM القابلة للتشغيل، والمصممة وفقًا لمواصفات El Torito، على صور أقراص مُثبّتة بواسطة BIOS لتظهر كأقراص مرنة أو أقراص فائقة المرونة على هذه الواجهة. كما يمكن استخدام قيم DL 0x00 و 0x01 بواسطة خدمات امتداد واجهة وقت تشغيل المنطقة المحمية (PARTIES) وامتدادات BIOS لمجموعة الحوسبة الموثوقة (TCG) في الوضع الموثوق للوصول إلى أقسام PARTIES غير المرئية، وهي ملفات صور الأقراص الموجودة عبر سجل امتداد هندسة التمهيد (BEER) في القطاع المادي الأخير من منطقة الحماية المضيفة (HPA) للقرص الصلب. وبينما صُممت هذه الأقراص لمحاكاة الأقراص المرنة أو الأقراص فائقة المرونة، فإن رمز MBR الذي يقبل قيم DL غير القياسية هذه يسمح باستخدام صور الوسائط المقسمة، على الأقل في مرحلة تمهيد أنظمة التشغيل.
  • البت الخامس من بروتوكول DH = 0: الجهاز مدعوم عبر المقاطعة 13h ؛ وإلا: لا يهم (يجب أن يكون صفرًا). يدعم بروتوكول DH بعض أنظمة BIOS من IBM.
  • قد تحتوي بعض السجلات الأخرى عادةً على قيم معينة (DS، ES، SS = 0x0000 ؛ SP = 0x0400 ) في أنظمة BIOS الأصلية من IBM، ولكن لا يُعتمد على ذلك، إذ قد تستخدم أنظمة BIOS الأخرى قيمًا مختلفة. لهذا السبب، لم تستفد برامج MBR من IBM ومايكروسوفت وديجيتال ريسيرش وغيرها من هذه الميزة. كما أن الاعتماد على هذه القيم في قطاعات الإقلاع قد يُسبب مشاكل في سيناريوهات الإقلاع المتسلسل.

ستوفر الأنظمة التي تدعم تقنية التوصيل والتشغيل BIOS أو BBS مؤشرًا لبيانات PnP بالإضافة إلى DL: [ 32 ] [ 34 ]

  • DL = وحدة محرك الإقلاع (انظر أعلاه)
  • ES : DI = يشير إلى " $PnP" بنية فحص التثبيت
تُمكّن هذه المعلومات مُحمّل الإقلاع في سجل الإقلاع الرئيسي (MBR) (أو سجل الإقلاع الظاهري VBR، إذا تم تمريرها) من التفاعل الفعال مع نظام الإدخال والإخراج الأساسي (BIOS) أو طبقة BIOS المُدمجة في الذاكرة لتكوين ترتيب الإقلاع، وما إلى ذلك. مع ذلك، تتجاهل معظم سجلات الإقلاع الرئيسية والظاهرية القياسية هذه المعلومات. من الناحية المثالية، يتم تمرير ES:DI إلى سجل الإقلاع الظاهري VBR لاستخدامه لاحقًا من قِبل نظام التشغيل المُحمّل، ولكن أنظمة التشغيل المُفعّلة بتقنية PnP عادةً ما تحتوي أيضًا على آليات احتياطية لاسترجاع نقطة دخول BIOS الخاصة بتقنية PnP لاحقًا، بحيث لا تعتمد معظم أنظمة التشغيل على هذه الآلية.

واجهة MBR إلى VBR

بحسب الاصطلاح، يقوم سجل التمهيد الرئيسي المتوافق مع المعايير بتمرير التنفيذ إلى سجل التمهيد الرأسي المحمل بنجاح، والمحمل في موقع الذاكرة 0x0000 : 0x7C00 ، عن طريق القفز إلى 0x0000 : 0x7C00 في الوضع الحقيقي لوحدة المعالجة المركزية مع الحفاظ على السجلات التالية أو إعدادها بشكل خاص:

  • CS:IP = 0x0000 : 0x7C00 [ m ] (ثابت)
  • DL = وحدة محرك الإقلاع (انظر أعلاه)
لا تُمرر سجلات التمهيد الرئيسية (MBR) لأنظمة MS-DOS 2.0–7.0 / PC  DOS 2.0–6.3 قيمة DL المُستلمة عند الدخول، بل تستخدم حالة التمهيد في جدول تقسيم القسم الأساسي المُختار كوحدة محرك تمهيد فعلية. وبما أن هذه القيمة، اصطلاحًا، هي 0x80 في معظم جداول تقسيم MBR، فلن يتغير شيء إلا إذا حاول نظام BIOS التمهيد من جهاز فعلي آخر غير القرص الثابت/المحرك القابل للإزالة الأول في الصف. وهذا أيضًا سبب عدم قدرة هذه الأنظمة على التمهيد من قرص صلب ثانٍ، وما إلى ذلك. تسمح بعض أدوات FDISK بتحديد الأقسام على الأقراص الثانوية على أنها "نشطة". في هذه الحالة، ونظرًا لأن هذه الأنظمة لا يمكنها التمهيد من محركات أقراص أخرى على أي حال، يستمر بعضها في استخدام القيمة الثابتة التقليدية 0x80 كعلامة على النشاط، بينما يستخدم البعض الآخر قيمًا تتوافق مع وحدة محرك الأقراص الفعلية المُخصصة حاليًا ( 0x81 ، 0x82 )، مما يسمح بالتمهيد من محركات أقراص أخرى، نظريًا على الأقل. في الواقع، هذا يعمل مع العديد من أكواد MBR التي تستخدم البت 7 المُعيّن من إدخال حالة الإقلاع كعلامة نشطة بدلاً من الإصرار على القيمة 0x80 . مع ذلك، فإن أكواد MBR في MS-DOS/PC DOS مُبرمجة مسبقًا لقبول القيمة الثابتة 0x80 فقط. كما أن تخزين رقم القرص الفعلي في جدول الأقسام سيُسبب مشاكل عند تغيير تعيين BIOS للأقراص الفعلية، على سبيل المثال عند إزالة الأقراص أو إضافتها أو استبدالها. لذلك، بالنسبة لـ MBR عادي يقبل البت 7 كعلامة نشطة ويستخدم قيمة DL المُقدمة من BIOS ويُمررها إلى VBR، فإن ذلك يُتيح أقصى قدر من المرونة. لقد تغيرت أكواد MBR في MS-DOS 7.1–8.0 لتتعامل مع البت 7 كعلامة نشطة وأي قيم من 0x01 إلى 0x7F على أنها غير صالحة، لكنها لا تزال تستخدم وحدة القرص الفعلية من جدول الأقسام بدلاً من استخدام قيمة DL المُقدمة من BIOS. تتعامل سجلات التمهيد الرئيسية الموسعة (MBR) في نظام DR-DOS 7.07 مع البت 7 كعلامة تفعيل، وتستخدم قيمة BIOS DL وتمررها افتراضيًا (بما في ذلك القيم غير القياسية 0x00 .. 0x01 التي تستخدمها بعض أنظمة BIOS أيضًا للوسائط المقسمة). كما توفر هذه السجلات كتلة تكوين NEWLDR خاصة لدعم طرق التمهيد البديلة بالاقتران مع LOADER وREAL/32، بالإضافة إلى تغيير سلوك MBR التفصيلي، بحيث يمكنه أيضًا العمل مع قيم محركات الأقراص المسترجعة من جدول الأقسام (مهم بالاقتران مع LOADER وAAPs، انظر إزاحة NEWLDR )، وترجمة وحدات محركات الأقراص غير القياسية Wyse من 0x02 .. 0x7F إلى 0x80 .. 0xFD ، وتصحيح قيمة محرك الأقراص (المخزنة عند الإزاحة في كتلة معلمات BIOS الموسعة (EBPB)). 0x000C0x019أو عند إزاحة القطاع 0x01FD) في VBRs المحملة قبل تمرير التنفيذ إليها (انظر إزاحة NEWLDR 0x0014) - وهذا يسمح أيضًا لمحملات التمهيد الأخرى باستخدام NEWLDR كمحمل سلسلة، وتكوين صورته في الذاكرة أثناء التشغيل و"توجيه" تحميل VBRs أو EBRs أو AAPs من خلال NEWLDR.
  • يجب أن يحتفظ سجل التمهيد الرئيسي (MBR) بمحتويات سجلي DH وES:DI لدعم خاصية التوصيل والتشغيل بشكل كامل (انظر أعلاه)، إلا أن العديد من سجلات التمهيد الرئيسية، بما في ذلك تلك الخاصة بأنظمة MS-DOS 2.0–8.0 / PC  DOS 2.0–6.3 وWindows NT/2000/XP، لا تفعل ذلك. (وهذا ليس مفاجئًا، لأن هذه الإصدارات من DOS أقدم من معيار BIOS للتوصيل والتشغيل، ولم تكن المعايير والاتفاقيات السابقة تشير إلى أي متطلبات للاحتفاظ بأي سجل آخر غير DL). بعض سجلات التمهيد الرئيسية تُعيّن قيمة DH إلى 0.

يقوم رمز MBR بتمرير معلومات إضافية إلى VBR في العديد من التطبيقات:

  • يشير DS:SI إلى مدخل جدول تقسيم MBR ذي 16 بايت (في MBR المُعاد توجيهه) المُطابق لـ VBR المُفعّل. يعتمد نظام PC-MOS 5.1 على هذا المدخل للإقلاع في حال عدم وجود قسم مُحدد كقابل للإقلاع في جدول التقسيم. وبالتزامن مع LOADER، تستخدم قطاعات الإقلاع في Multiuser DOS و REAL/32 هذا المدخل لتحديد قطاع الإقلاع للقسم النشط (أو مُحمل إقلاع آخر مثل IBMBIO.LDR في موقع ثابت على القرص) إذا تعذر العثور على ملف الإقلاع (LOADER.SYS). يستخدم كل من PTS-DOS 6.6 و S/DOS 1.0 هذا المدخل بالتزامن مع ميزة Advanced Active Partition (AAP). بالإضافة إلى دعم LOADER وAAPs، يمكن لنظام DR-DOS 7.07 استخدام هذا المدخل لتحديد طريقة الوصول INT 13h اللازمة عند استخدام رمز VBR المزدوج CHS/LBA، وسيقوم بتحديث حقل علامة حالة محرك الإقلاع في مدخل القسم وفقًا لقيمة DL المُستخدمة فعليًا. تعتمد برامج إقلاع داروين (برامج أبل boot1h، boot1uوبرامج ديفيد إليوت boot1fat32) على هذا المؤشر أيضًا، ولكنها لا تستخدم DS، بل تفترض أنه مُعيّن على 0x0000 . [ 33 ] سيؤدي هذا إلى مشاكل إذا كان هذا الافتراض خاطئًا. يوفر رمز سجل الإقلاع الرئيسي (MBR) لأنظمة التشغيل OS/2 ، وMS-DOS من الإصدار 2.0 إلى 8.0، وPC DOS من الإصدار 2.0 إلى 7.10، وWindows NT/2000/XP هذه الواجهة نفسها، على الرغم من أن هذه الأنظمة لا تستخدمها. لم يعد سجل الإقلاع الرئيسي (MBR) لأنظمة Windows Vista/7 يوفر مؤشر DS:SI. في حين أن بعض الامتدادات تعتمد فقط على مدخل جدول التقسيم ذي الـ 16 بايت، قد تتطلب امتدادات أخرى وجود جدول التقسيم بالكامل (4 أو 5 مداخل). 
  • يشير DS: BP = اختياريًا إلى مدخل جدول تقسيم MBR ذي 16 بايت (في MBR المُعاد توجيهه) المُطابق لـ VBR المُفعّل. هذا المؤشر مُطابق للمؤشر الذي يوفره DS:SI (انظر أعلاه)، وهو مُتاح في أنظمة MS-DOS من الإصدار 2.0 إلى 8.0، وPC  DOS من الإصدار 2.0 إلى 7.10، وأنظمة Windows NT/2000/XP/Vista/7 . مع ذلك، لا تدعمه معظم أنظمة MBR التابعة لجهات خارجية.

في نظام DR-DOS 7.07، يمكن توفير واجهة موسعة اختيارياً بواسطة سجل التمهيد الرئيسي الموسع وبالتزامن مع برنامج التحميل:

  • AX = توقيع سحري يشير إلى وجود امتداد NEWLDR هذا ( 0x0EDC )
  • DL = وحدة محرك الإقلاع (انظر أعلاه)
  • DS:SI = يشير إلى إدخال جدول تقسيم MBR ذي 16 بايت المستخدم (انظر أعلاه)
  • ES: BX = بداية قطاع التمهيد أو صورة قطاع NEWLDR (عادةً 0x7C00 )
  • CX = محجوز

بالتزامن مع GPT، يقترح اقتراح MBR الهجين لمواصفات محرك الأقراص المحسّنة (EDD) 4 امتدادًا آخر للواجهة: [ 37 ]

  • EAX = 0x54504721 (" ")!GPT
  • DL = وحدة محرك الإقلاع (انظر أعلاه)
  • يشير DS:SI إلى بنية تسليم MBR هجينة، تتكون من مدخل جدول تقسيم MBR وهمي بحجم 16 بايت (مع ضبط جميع البتات باستثناء علامة التمهيد عند الإزاحة 0x00 ونوع التقسيم عند الإزاحة 0x04 ) متبوعًا ببيانات إضافية. يتوافق هذا جزئيًا مع امتداد DS:SI الأقدم المذكور أعلاه، إذا كانت هذه الامتدادات الأقدم تتطلب فقط مدخل التقسيم بحجم 16 بايت، وليس جدول التقسيم بأكمله.
بما أن أنظمة التشغيل القديمة (بما في ذلك سجلات الإقلاع الافتراضية الخاصة بها) لا تدعم هذا الامتداد ولا تستطيع معالجة القطاعات التي تتجاوز  حاجز 2 تيرابايت، فإنه ينبغي على مُحمِّل الإقلاع الهجين المُفعَّل بتقنية GPT أن يُحاكي إدخال جدول تقسيم MBR الوهمي ذي 16 بايت إذا كان قسم الإقلاع موجودًا ضمن أول 2  تيرابايت. [ n ]
  • ES:DI = يشير إلى $PnPبنية فحص التثبيت " " (انظر أعلاه)

تحرير واستبدال المحتويات

على الرغم من إمكانية التلاعب بالبايتات في قطاع سجل التمهيد الرئيسي (MBR) مباشرةً باستخدام برامج تحرير الأقراص المختلفة ، إلا أن هناك أدوات لكتابة مجموعات ثابتة من التعليمات البرمجية العاملة في سجل التمهيد الرئيسي. منذ نظام التشغيل MS-DOS 5.0، FDISKيتضمن البرنامج خيارًا /MBRلإعادة كتابة تعليمات سجل التمهيد الرئيسي. [ 38 ] في نظامي التشغيل Windows 2000 و Windows XP ، يمكن استخدام وحدة التحكم بالاسترداد لكتابة تعليمات سجل التمهيد الرئيسي الجديدة إلى جهاز التخزين باستخدام fixmbrأمرها. في نظامي التشغيل Windows Vista و Windows 7 ، يمكن استخدام بيئة الاسترداد لكتابة تعليمات سجل التمهيد الرئيسي الجديدة باستخدام BOOTREC /FIXMBRالأمر. كما يمكن استخدام بعض الأدوات المساعدة الخارجية لتحرير محتويات جداول الأقسام مباشرةً (دون الحاجة إلى أي معرفة ببرامج تحرير الأقراص/القطاعات أو النظام الست عشري)، مثل MBRWizard. [ o ]

ddيُعدّ هذا الأمر من أوامر POSIX الشائعة الاستخدام لقراءة أو كتابة أي موقع على جهاز تخزين، بما في ذلك سجل التمهيد الرئيسي (MBR). في نظام Linux ، يمكن استخدام ms-sys لتثبيت سجل التمهيد الرئيسي لنظام Windows. يحتوي مشروعا GRUB و LILO على أدوات لكتابة التعليمات البرمجية إلى قطاع سجل التمهيد الرئيسي، وهما `g` grub-installو`l` lilo -mbr. يمكن لوحدة التحكم التفاعلية GRUB Legacy الكتابة إلى سجل التمهيد الرئيسي باستخدام الأمرَين `g` setupو`l` embed، ولكن يتطلب GRUB2 حاليًا grub-installتشغيل `g` من داخل نظام التشغيل.

تستطيع برامج مختلفة إنشاء " نسخة احتياطية " لكل من جدول التقسيم الأساسي والأقسام المنطقية في القسم الموسع.

يُمكن لنظام لينكس sfdisk(على قرص SystemRescueCD ) حفظ نسخة احتياطية من جدول الأقسام الأساسي والموسع. يُنشئ النظام ملفًا يُمكن قراءته في محرر نصوص، أو يُمكن استخدام هذا الملف بواسطة أداة sfdisk لاستعادة جدول الأقسام الأساسي/الموسع. مثال على أمر لعمل نسخة احتياطية من جدول الأقسام هو `require`، sfdisk -d /dev/hda > hda.outوللاستعادة هو `require` sfdisk /dev/hda < hda.out. من الممكن نسخ جدول الأقسام من قرص إلى آخر بهذه الطريقة، وهو أمر مفيد لإعداد النسخ المتطابق، ولكن sfdisk يُنفذ الأمر دون مطالبات أو تحذيرات باستخدام `require` sfdisk -d /dev/sda | sfdisk /dev/sdb. [ 39 ]

انظر أيضاً

ملحوظات

  1. ١ ٢ ٣ ٤ ٥ ٦ ٧ التوقيع عند الإزاحة ٠x٠١FE في قطاعات الإقلاع هو، أي ٠x٥٥ عند الإزاحة ٠x٠١FE وعند الإزاحة ٠x٠١FF . بما أنه يجب افتراض تمثيل little-endian في سياق أجهزة IBM PC المتوافقة، يمكن كتابة هذا ككلمة ١٦ بتفي البرامج الخاصة بمعالجات x٨٦ (لاحظ تبديل الترتيب)، بينما يجب كتابته كـفي البرامج الخاصة ببنى المعالجات الأخرى التي تستخدم تمثيل big-endian . نظرًا لأن هذا قد تم الخلط بينه عدة مرات في الكتب وحتى في وثائق مايكروسوفت المرجعية الأصلية، تستخدم هذه المقالة التمثيل القائم على الإزاحة على مستوى البايت على القرص لتجنب أي سوء فهم محتمل.55hex AAhexAAhexAA55hex55AAhex
  2. لضمان سلامة كود مُحمِّل الإقلاع MBR، من المهمعدم تغيير البايتات الموجودة في النطاق من 0x00DA إلى 0x00DF ، إلا إذا كانت جميع البايتات الستة تمثل القيمة 0، أو إذا تم استبدال كود مُحمِّل الإقلاع MBR بالكامل (باستثناء جدول الأقسام الموسّع) في الوقت نفسه. يشمل ذلك إعادة تعيين هذه القيم إلى الصفر ما لم يكن الكود المخزن في MBR معروفًا. يلتزم نظام ويندوز بهذه القاعدة.00 00 00 00 00 00hex
  3. في الأصل، كانت قيم الحالة الأخرى غير 0x00 و 0x80 غير صالحة، لكن سجلات التمهيد الرئيسية الحديثة تتعامل مع البت 7 كعلامة نشطة وتستخدم هذا الإدخال لتخزين وحدة التمهيد الفعلية.
  4. 1 2 تقتصر حقول القطاع الابتدائي على 1023+1 أسطوانة، و255+1 رأس، و63 قطاعًا؛ وحقول القطاع النهائي لها نفس القيود.
  5. 1 2 3 4 5 يتراوح نطاق القطاع من 1 إلى 63؛ ويتراوح نطاق الأسطوانة من 0 إلى 1023؛ ويتراوح نطاق الرأس من 0 إلى 255 شاملًا. [ 13 ]
  6. يتم استخدام هذا المدخل بواسطة أنظمة التشغيل في ظروف معينة؛ في مثل هذه الحالات يتم تجاهل عناوين CHS. [ 15 ]
  7. الصفر محجوز ولا يجوز استخدامه في إدخالات التقسيم العادية. تستخدم أنظمة التشغيل هذا الإدخال في ظروف معينة؛ وفي هذه الحالات يتم تجاهل عناوين CHS. [ 15 ]
  8. «اقتباس: تحتوي معظم إصدارات نظام التشغيل MS-DOS (بما في ذلك MS-DOS 7 [Windows 95]) على خلل يمنع الإقلاع من الأقراص الصلبة ذات 256 رأسًا (FFh)، لذا توفر العديد من أنظمة BIOS الحديثة عمليات ربط برؤوس لا تتجاوز 255 رأسًا (FEh).» RBIL [ 40 ] [ 41 ]
  9. العنوان:هو البايت الأول من الجزء الثاني والثلاثين من ذاكرة الوصول العشوائي (RAM). تاريخيًا، كان تحميل برنامج الإقلاع من هذا العنوان هو السبب في أن الحد الأدنى لحجم ذاكرة الوصول العشوائي في جهاز IBM PC الأصلي (النوع 5150) كان 16 كيلوبايت، بينما كان مطلوبًا 32 كيلوبايت لخيار القرص في جهاز IBM XT.0000hex7C00hex
  10. إذا كان هناك EBDA ، فإن الذاكرة المتاحة تنتهي أسفله.
  11. قد تحتوي الأجهزة القديمة جدًا على ذاكرة أقل من 640 كيلوبايت (أو 655,360 بايت). نظريًا، يُضمن وجود 32 كيلوبايت فقط (حتى:) أو 64 كيلوبايت (حتى:)؛ وهذا ما ينطبق على جهاز من فئة IBM XT مزود بالحد الأدنى المطلوب من الذاكرة لنظام القرص.A0000hex0000hex7FFFhex0000hexFFFFhex
  12. ينطبق هذا عندما يتعامل نظام الإدخال والإخراج الأساسي (BIOS) مع سجل التمهيد الافتراضي (VBR)، أي عندما يكون موجودًا في القطاع الفيزيائي الأول من وسائط التخزين غير المقسمة. بخلاف ذلك، لا علاقة لنظام الإدخال والإخراج الأساسي (BIOS) بسجل التمهيد الافتراضي (VBR). صُممت سجلات التمهيد الافتراضية (VBR) على هذا النحو لأنها نشأت حصريًا على وسائط الأقراص المرنة غير المقسمة - إذ لم يكن لدى جهاز الكمبيوتر الشخصي IBM من النوع 5150 خيار القرص الصلب في الأصل - وتم تطوير نظام التقسيم باستخدام سجل التمهيد الرئيسي (MBR) لاحقًا كآلية لوضع أكثر من وحدة تخزين، تبدأ كل منها بسجل تمهيد افتراضي (VBR) خاص بها كما هو مُحدد مسبقًا، على قرص ثابت واحد. وبهذا التصميم، يُحاكي سجل التمهيد الرئيسي (MBR) بشكل أساسي روتين تمهيد نظام الإدخال والإخراج الأساسي (BIOS)، حيث يقوم بنفس الإجراءات التي يقوم بها نظام الإدخال والإخراج الأساسي (BIOS) لمعالجة سجل التمهيد الافتراضي (VBR) هذا وإعداد بيئة التشغيل الأولية له تمامًا كما لو كان نظام الإدخال والإخراج الأساسي (BIOS) قد عثر على سجل التمهيد الافتراضي (VBR) هذا على وسيط تخزين غير مقسم.
  13. يتم ضبط قيمة IP نتيجةً للقفزة. يمكن ضبط قيمة CS على 0 إما بتنفيذ قفزة بعيدة أو بتحميل قيمة السجل صراحةً قبل تنفيذ قفزة قريبة. (يستحيل على كود x86 الذي تم القفز إليه اكتشاف ما إذا تم استخدام قفزة قريبة أو بعيدة للوصول إليه [إلا إذا قام الكود الذي نفذ القفزة بتمرير هذه المعلومات بشكل منفصل بطريقة ما]).
  14. هذا ليس جزءًا من الاقتراح المذكور أعلاه، ولكنه نتيجة طبيعية للظروف الموجودة مسبقًا.
  15. على سبيل المثال، لا يزال برنامج PowerQuest's Partition Table Editor (PTEDIT32.EXE)، الذي يعمل تحت أنظمة تشغيل Windows، متاحًا هنا: موقع Symantec's FTP .

مراجع

  1. ١ ٢ ٣ ٤ "دعم نظام ويندوز للأقراص الصلبة التي تزيد سعتها عن ٢ تيرابايت" . ١. مايكروسوفت . ٢٠١٣-٠٦-٢٦. ٢٥٨١٤٠٨. مؤرشف من الأصل في ٢٠١٧-٠٤-٢٧ . تم الاسترجاع في ٢٠١٣-٠٨-٢٨ .
  2. 1 2 3 سيدوري، دانيال ب. (2004). "البايتات الغامضة (أو بايتات محرك الأقراص/الطابع الزمني) لسجل التمهيد الرئيسي (MBR) لأنظمة التشغيل ويندوز 95B و98 و98SE وMe" . سجلات التمهيد الرئيسية . thestarman.pcministry.com. مؤرشف من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 25 أغسطس 2012 .
  3. لوكاس، مايكل (2003). نظام OpenBSD المطلق: يونكس للمتشككين العمليين . دار نشر نو ستارش. ص 73. ISBN  9781886411999تم الاطلاع عليه بتاريخ 9 أبريل 2011. يحتوي كل نظام تشغيل على أدوات لإدارة أقسام سجل التمهيد الرئيسي (MBR). مع ذلك، يختلف كل نظام تشغيل في طريقة تعامله مع أقسام سجل التمهيد الرئيسي.
  4. نورتون، بيتر ؛ كلارك، سكوت (2002). كتاب بيتر نورتون الجديد: داخل الحاسوب الشخصي . دار سامز للنشر . الصفحات 360-361 . رقم ISBN  0-672-32289-7.
  5. غريفز، مايكل و. (2004). دليل شامل لصيانة وإصلاح أجهزة الكمبيوتر . تومسون ديل مار. ص 276. ISBN  1-4018-5230-0.
  6. ↑ أندروز ، جين (2003). الترقية والإصلاح مع جين أندروز . تومسون كورس تكنولوجي. ص 646. ISBN  1-59200-112-2.
  7. بوسويل، ويليام (2003). نظرة داخلية على ويندوز سيرفر 2003. أديسون -ويسلي بروفيشنال . ص 13. ISBN  0-7357-1158-5.
  8. سميث، رودريك و. (2000). دليل تكوين الإقلاع المتعدد . دار نشر كيو . الصفحات 260-261 . رقم ISBN  0-7897-2283-6.
  9. براور، أندريس إيفرت (22-04-2004) [2000]. "خصائص جداول التقسيم" . أنواع التقسيم . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 . يكتب ماتياس [ر.] بول: "[...] يستخدم PTS-DOS مدخل تقسيم خامس خاص أمام المداخل الأربعة الأخرى في سجل التمهيد الرئيسي (MBR) ورمز التمهيد الخاص به المتوافق مع AAP. [...]"
  10. براور، أندريس إيفرت (22-04-2004) [2000]. "خصائص جداول التقسيم" . أنواع التقسيم . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 . بعض أنظمة الشركات المصنعة الأصلية، مثل AST DOS (النوع ) وNEC DOS (النوع )، كانت تحتوي على 8 مداخل تقسيم بدلاً من 4 في قطاعات سجل التمهيد الرئيسي (MBR). (ماتياس ر. بول).14hex24hex(ملاحظة: جداول تقسيم NEC MS-DOS 3.30 و AST MS-DOS التي تحتوي على ثمانية إدخالات مسبوقة بتوقيع عند الإزاحة 0x017C .)A55Ahex
  11. سيدوري، دانيال ب. (18-05-2007) [2003]. "ملاحظات حول الاختلافات في إحدى نسخ OEM من سجل التمهيد الرئيسي لنظام DOS 3.30" . سجلات التمهيد الرئيسية . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 . عند إضافة أقسام إلى جدول NEC هذا، وُضع القسم الأول عند الإزاحات من 0x01EE إلى 0x01FD ، وأُضيف القسم التالي فوقه مباشرةً. لذا، تُدرج الأقسام وتُعرض بترتيب عكسي مقارنةً بالجدول العادي. وبالتالي، عند النظر إلى هذا الجدول باستخدام محرر أقراص أو أداة عرض الأقسام، سيظهر القسم الأول في جدول NEC ذي الثمانية أقسام على أنه القسم الأخير (القسم الرابع) في جدول الأقسام العادي.(ملاحظة: يعرض جدول تقسيم مكون من 8 إدخالات، ويوضح أين يختلف رمز التمهيد الخاص به عن MS-DOS 3.30.)
  12. "جدول التقسيم" . osdev.org. 18-03-2017 [06-03-2007]. مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 .
  13. 1 2 3 نظام BIOS لأجهزة كمبيوتر IBM PC/XT/AT والأجهزة المتوافقة . مرجع فينيكس التقني. أديسون-ويسلي . 1989. ISBN 0-201-51806-6.
  14. براور، أندريس إيفرت (2013) [1995]. "قائمة مُعرّفات الأقسام لأجهزة الكمبيوتر الشخصية" . أنواع الأقسام . مؤرشف من الأصل بتاريخ 24-08-2017 . تم الاسترجاع بتاريخ 24-08-2017 .
  15. وود ، سيبيل (2002). دليل عمليات خادم مايكروسوفت ويندوز 2000. مطبعة مايكروسوفت . ص 18. ISBN  978-0-73561796-4.
  16. "مقدمة في هندسة القرص الصلب" . تيك جوس . 2012-12-06 [2011-08-08]. مؤرشف من الأصل في 2013-02-04.
  17. كوزيروك، تشارلز م. (17 أبريل 2001). "نظام الإدخال والإخراج الأساسي (BIOS) والقرص الصلب" . دليل الحاسوب الشخصي . مؤرشف من الأصل في 17 يونيو 2017. تم الاطلاع عليه في 19 أبريل 2013 .
  18. سميث، روبرت (26-06-2011). "التغلب على قيود MBR" . دليل GPT fdisk التعليمي . مؤرشف من الأصل في 24-08-2017 . تم الاطلاع عليه في 20-04-2013 .
  19. "أكثر من 2 تيرابايت على قرص MBR" . superuser.com. 2013-03-07. مؤرشف من الأصل في 2017-08-24 . تم الاطلاع عليه في 2013-10-22 .
  20. "الانتقال إلى محركات الأقراص الصلبة ذات القطاعات 4K بتنسيق متقدم" . رؤى تقنية . شركة سيجيت للتكنولوجيا . 2012. مؤرشف من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 19 أبريل 2013 .
  21. كالفيرت، كيلفن (16 مارس 2011). "محركات الأقراص الصلبة ذات السعة الكبيرة WD AV-GP" (ملف PDF) . ويسترن ديجيتال . تاريخ الاسترجاع: 20 أبريل 2013 .
  22. سميث، رودريك و. (27 أبريل 2010). "لينكس على أقراص ذات قطاعات 4 كيلوبايت: نصائح عملية" . ديفيلوبر وركس . آي بي إم . مؤرشف من الأصل في 24 أغسطس 2017. تم الاطلاع عليه في 19 أبريل 2013 .
  23. 1 2 "MBR (x86)" . ويكي OSDev . OSDev.org. 2012-03-05. مؤرشف من الأصل في 2017-08-24 . تم الاسترجاع في 2013-04-20 .
  24. سيدوري، دانيال ب. (30 يوليو 2003). "سجل الإقلاع الرئيسي لنظام التشغيل IBM DOS 2.00" . عالم ستارمان. مؤرشف من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 22 يوليو 2011 .
  25. سينغ، أميت (25 ديسمبر 2009) [ديسمبر 2003]. "تشغيل نظام التشغيل ماك أو إس إكس" . كتاب "أساسيات نظام التشغيل ماك أو إس إكس " . تم الاطلاع عليه بتاريخ 22 يوليو 2011 .
  26. دي بوين بولارد، جوناثان (10 يوليو 2011). "عملية إقلاع نظام EFI" . إجابات شائعة . مؤرشف من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 22 يوليو 2011 .
  27. دومش، مات (22-03-2005) [19-12-2003]. "ردًا على: تحسينات RFC 2.6.0 EDD" . قائمة بريدية لنواة لينكس . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 .
  28. "قد يستخدم نظام التشغيل Windows صيغة Signature() في ملف BOOT.INI" . قاعدة المعرفة . مايكروسوفت .
  29. ماكتافيش (فبراير 2014). "بصمة قرص MBR لنظام Vista" . أنظمة الإقلاع المتعددة: الإقلاع المزدوج والإقلاع المتعدد مع Vista . مؤرشف من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 24 أغسطس 2017 .
  30. روسينوفيتش، مارك (2011-11-08). "إصلاح تعارضات توقيع القرص" . مدونة مارك روسينوفيتش . مايكروسوفت . مؤرشف من الأصل في 2017-08-24 . تم الاسترجاع في 2013-04-19 .
  31. 1 2 3 ساكاموتو، ماساهيكو (13 مايو 2010). "لماذا يقوم نظام BIOS بتحميل سجل التمهيد الرئيسي (MBR) في معالجات x86؟" . Glamenv-Septzen.net. مؤرشف من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 4 مايو 2011 .0x7C00
  32. ١ ٢ ٣ ٤ ٥ ٦ شركة كومباك للحاسوب ؛ شركة فينيكس تكنولوجيز المحدودة ؛ شركة إنتل (١١ يناير ١٩٩٦). "مواصفات إقلاع BIOS ١.٠١" (ملف PDF) . ١.٠١. ACPICA. مؤرشف (ملف PDF) من الأصل بتاريخ ٢٤ أغسطس ٢٠١٧. تم الاطلاع عليه بتاريخ ٢٠ أبريل ٢٠١٣ .
  33. 1 2 إليوت، ديفيد ف. (12-10-2009). "لماذا يضبط سجل التشغيل الرئيسي "القياسي" النظام الدولي للوحدات؟" . tgwbd.org . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 20-04-2013 .
  34. ١ ٢ ٣ شركة كومباك للحواسيب ؛ شركة فينيكس تكنولوجيز المحدودة ؛ شركة إنتل (٥ مايو ١٩٩٤). "مواصفات BIOS للتوصيل والتشغيل ١.٠أ" (ملف PDF) . ١.٠أ. إنتل . مؤرشف من الأصل (ملف PDF) بتاريخ ٢٤ أغسطس ٢٠١٧. تم الاطلاع عليه بتاريخ ٢٠ أبريل ٢٠١٣ .
  35. بول، ماتياس ر. (2 أكتوبر 1997) [29 سبتمبر 1997]. "تحديث Caldera OpenDOS 7.01/7.02 ألفا 3 IBMBIO.COM - README.TXT وBOOT.TXT - وصف موجز لكيفية تشغيل OpenDOS" . مؤرشف من الأصل في 4 أكتوبر 2003. تم الاطلاع عليه في 29 مارس 2009 .
  36. بول، ماتياس ر. (14 أغسطس 2017) [7 أغسطس 2017]. "الملحمة المستمرة لنظام التشغيل ويندوز 3.1 في الوضع المحسّن على جهاز أومني بوك 300" . متحف آلات حاسبة HP (MoHPC ). مؤرشف من الأصل في 1 مايو 2018. تم الاسترجاع في 1 مايو 2018. [...] SYS [...] /O[:nnn] تجاوز وحدة محرك الإقلاع المُبلغ عنها في IPL (n=0..126، 128..254). [...] تجهيز القرص الهدف... اختيار قطاع إقلاع FAT12 CHS (يتطلب من IPL الإبلاغ عن وحدة الإقلاع). التعامل مع الهدف كقرص مرن أو قرص فائق المرونة (وحدة محرك الإقلاع 0). كتابة قطاع إقلاع جديد... [...](ملاحظة: يقوم SYS بكتابة سجلات تمهيد وحدة التخزين بدلاً من سجلات التمهيد الرئيسية، ولكن واجهة التسجيل الواردة الخاصة بهما متشابهة (مع امتدادات) حيث يمكن تحميل كليهما مبدئيًا بواسطة النظام الأساسي.)
  37. إليوت، روبرت (4 يناير 2010). "ملحق رمز التمهيد الهجين EDD-4 MBR" (ملف PDF) . هيوليت باكارد ، اللجنة الفنية T13. e09127r3. مؤرشف (ملف PDF) من الأصل بتاريخ 24 أغسطس 2017. تم الاطلاع عليه بتاريخ 20 أبريل 2013 .
  38. "يعيد الأمر FDISK /MBR كتابة سجل التمهيد الرئيسي" . الدعم . 1. مايكروسوفت . 23-09-2011. 69013. مؤرشف من الأصل في 08-02-2017 . تم الاسترجاع في 19-04-2013 .
  39. "sfdisk(8) – صفحة دليل لينكس" . die.net . 2013 [2007]. مؤرشف من الأصل بتاريخ 24-08-2017 . تم الاطلاع عليه بتاريخ 20-04-2013 .
  40. براون، رالف د. (16 يوليو 2000). "قائمة مقاطعات رالف براون (الإصدار 61 بصيغة HTML)" . شركة ديلوري للبرمجيات . تم الاطلاع عليه بتاريخ 3 نوفمبر 2016 .
  41. براون، رالف د. (16-07-2000). "B-1302: المقاطعة 13 - القرص - قراءة القطاع (القطاعات) إلى الذاكرة" . قائمة مقاطعات رالف براون (RBIL) (الطبعة 61  ) . تم الاطلاع بتاريخ 03-11-2016 .(ملاحظة: انظر الملف INTERRUP.B داخل الأرشيف "INTER61A.ZIP.")

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

  • جيلبرت، هوارد (1996-01-01) [1995]. "الأقسام والمجلدات" . PC Lube & Tune . مؤرشف من الأصل في 2016-03-03.
  • نايتس، راي (22-12-2004) [16-12-2000]. "مكان راي" . سجل التمهيد الرئيسي وقطاعات تمهيد ويندوز (يتضمن تفكيك الشفرة وشرح عملية التمهيد) . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 .
  • لانديس، هيل (2002-05-06). "سجل التمهيد الرئيسي" . كيف يعمل . مؤرشف من الأصل في 2014-07-01.
  • سيدوري، دانيال ب. (25-06-2015) [2007]. "MBRs (Master Boot Records)" . الكشف عن سجلات التسجيلات غير الرسمية . مؤرشف من الأصل في 24-08-2017 . تم الاسترجاع في 24-08-2017 .