سجل بدء تشغيل وحدة التخزين

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

يتم استدعاء التعليمات البرمجية الموجودة في سجلات تمهيد وحدة التخزين إما مباشرةً بواسطة البرامج الثابتة للجهاز أو بشكل غير مباشر بواسطة التعليمات البرمجية الموجودة في سجل التمهيد الرئيسي أو مدير التمهيد . ويتم تحميل التعليمات البرمجية في كل من سجل التمهيد الرئيسي وسجل تمهيد وحدة التخزين بنفس الطريقة .

يُعرف استدعاء سجل التمهيد الافتراضي (VBR) عبر مدير التمهيد باسم التحميل المتسلسل . تقوم بعض أنظمة التمهيد المزدوج ، مثل NTLDR ( محمل التمهيد لجميع إصدارات أنظمة التشغيل المشتقة من Windows NT من Microsoft حتى Windows XP و Windows Server 2003 )، بأخذ نسخ من كود التمهيد الذي تُثبته أنظمة التشغيل الفردية في سجل التمهيد الافتراضي (VBR) لقسم واحد وتخزينها في ملفات على القرص، ثم تحميل محتوى سجل التمهيد الافتراضي (VBR) ذي الصلة من الملف بعد أن يسأل محمل التمهيد المستخدم عن نظام التشغيل الذي يرغب في التمهيد منه. في Windows Vista و Windows Server 2008 والإصدارات الأحدث، تم استبدال NTLDR؛ حيث يتم توفير وظيفة محمل التمهيد بدلاً من ذلك بواسطة مكونين جديدين: WINLOAD.EXE ومدير تمهيد Windows .

في أنظمة الملفات مثل FAT12 (باستثناء DOS 1.x)، و FAT16 ، وFAT32 ، و HPFS ، و NTFS ، يحتوي سجل VBR أيضًا على كتلة معلمات BIOS (BPB) التي تحدد موقع وتخطيط هياكل البيانات الرئيسية على القرص لنظام الملفات. (يمكن الاطلاع على شرح مفصل لتخطيط قطاعات سجلات VBR في نظام FAT، وإصدارات BPB المختلفة، ومدخلاتها في مقالة FAT ).

التفاصيل الفنية

إمضاء

يُشار إلى وجود مُحمِّل إقلاع متوافق مع أجهزة IBM PC لمعالجات x86 في قطاع الإقلاع، وفقًا للعرف، بتسلسل سداسي عشري ثنائي البايت يُسمى توقيع قطاع الإقلاع ( 55h عند الإزاحة الثابتة +1FEh و AAh عند +1FFh ) لأحجام القطاعات التي تبلغ 512 بايت أو أكثر. [ ملاحظة 1 ] بالنسبة للقطاعات التي تبلغ 512 بايت، يُشير توقيع قطاع الإقلاع أيضًا إلى نهاية القطاع. قد تُظهر سجلات الإقلاع المتغيرة (VBRs) في القطاعات الأصغر والأكبر توقيعات في نهاية حجم القطاع الفعلي أيضًا، ومع ذلك، فإن الدلالات الموضحة هنا تنطبق على التوقيع ذي 16 بت عند +1FEh فقط.

تشير هذه البصمة إلى وجود مُحمِّل إقلاع وهمي على الأقل، وهو آمن للتنفيذ، حتى وإن لم يكن قادرًا على تحميل نظام تشغيل فعلي. ولا تشير إلى وجود نظام ملفات (أو حتى نظام تشغيل مُحدد)، مع أن بعض الإصدارات القديمة من نظام DOS قبل الإصدار 3.3 كانت تعتمد عليها في عملية اكتشاف الوسائط المُهيأة بنظام FAT (الإصدارات الأحدث لا تعتمد عليها). يجب ألا يستخدم رمز الإقلاع لمنصات أو معالجات أخرى هذه البصمة، لأن ذلك قد يؤدي إلى تعطل النظام عندما يُمرر نظام BIOS التنفيذ إلى قطاع الإقلاع بافتراض أنه يحتوي على رمز تنفيذي صالح. هذا يعني أن وسائط FAT12 / FAT16 التي ستستخدمها أيضًا الإصدارات القديمة جدًا من نظام DOS يجب أن تحتفظ بهذه البصمة حتى لو لم تكن تحتوي على نظام تشغيل أو كانت مُخصصة للإقلاع على منصات أخرى فقط؛ وبالتالي، يجب أن تحتوي على مُحمِّل إقلاع (وهمي) متوافق مع x86 على الأقل (للمقارنة، انظر أمثلة على نظام FAT على جهاز Atari ST ومع نظام MSX-DOS ). ومع ذلك، تحتوي بعض الوسائط الخاصة بمنصات أخرى بشكل خاطئ على التوقيع حتى بدون برنامج تحميل وهمي متوافق مع x86، مما يجعل الفحص غير موثوق به بنسبة 100٪ من الناحية العملية.

يتم اختبار التوقيع بواسطة معظم أنظمة BIOS منذ جهاز IBM PC/AT (على الأقل) (ولكن ليس بواسطة جهاز IBM PC الأصلي وبعض الأجهزة الأخرى). علاوة على ذلك، يتم التحقق منه أيضًا بواسطة معظم برامج تحميل الإقلاع MBR قبل تمرير التحكم إلى قطاع الإقلاع. بعض أنظمة BIOS (مثل IBM PC/AT) تُجري هذا الفحص فقط للأقراص الثابتة/محركات الأقراص القابلة للإزالة، بينما بالنسبة للأقراص المرنة والأقراص المرنة الفائقة، يكفي أن يبدأ قطاع الإقلاع ببايت أكبر من أو يساوي 06h وأن لا تحتوي الكلمات التسع الأولى على القيمة نفسها، قبل قبول قطاع الإقلاع على أنه صالح، وبالتالي تجنب الاختبار الصريح لـ 55h و AAh على الأقراص المرنة. نظرًا لأن قطاعات الإقلاع القديمة (مثل وسائط CP/M-86 وDOS القديمة جدًا ) لا تحتوي أحيانًا على هذا التوقيع على الرغم من إمكانية الإقلاع منها بنجاح، يمكن تعطيل هذا الفحص في بعض البيئات. ويعكس هذا أيضًا حقيقة أنه يمكن تهيئة الأقراص المرنة لاستخدام أحجام قطاعات أصغر من 512 بايت.

إذا لم يكتشف نظام الإدخال والإخراج الأساسي (BIOS) أو سجل التمهيد الرئيسي (MBR) قطاع تمهيد صالحًا، وبالتالي لم يتمكن من تمرير تنفيذ كود قطاع التمهيد، فسيحاول استخدام جهاز التمهيد التالي في الترتيب. إذا فشلت جميع المحاولات، فسيعرض عادةً رسالة خطأ ويستدعي المقاطعة 18h . [ 1 ] سيؤدي هذا إما إلى تشغيل برنامج اختياري موجود في ذاكرة القراءة فقط ( ROM BASIC )، أو محاولة التمهيد عن بُعد عبر الشبكة، أو إعادة تشغيل النظام عبر المقاطعة 19h بعد تأكيد المستخدم، أو إيقاف عملية التمهيد حتى إعادة تشغيل النظام. [ 1 ]

من الإزاحة العشرية 72 إلى 79، يحتوي سجل حدود القسم (PBR) لنظام الملفات NTFS على رقم تسلسلي لمعرف وحدة التخزين UUID للقسم.

دعاء

يمكن لرمز الإقلاع في سجل الإقلاع الظاهري (VBR) أن يفترض أن نظام الإدخال والإخراج الأساسي (BIOS) قد قام بإعداد هياكل البيانات والمقاطعات الخاصة به، بالإضافة إلى تهيئة المكونات المادية. يجب ألا يفترض الرمز وجود أكثر من 32 كيلوبايت من الذاكرة لضمان التشغيل الآمن؛ [ 1 ] إذا احتاج إلى ذاكرة أكبر، فعليه الاستعلام من المقاطعة 12h ، حيث قد توجد رموز أخرى قبل الإقلاع (مثل طبقات امتداد BIOS، وأنظمة التشفير، أو برامج تحميل الإقلاع عن بُعد ) في أماكن أخرى من الذاكرة (وعادةً ما تُخفي هذه الرموز نفسها عن قطاع الإقلاع عن طريق تقليل الذاكرة المُبلغ عنها في المقاطعة 12h، حتى لا يتم استبدالها بإجراءات سجل الإقلاع الرئيسي (MBR) وسجل الإقلاع الظاهري (VBR)). تسمح مواصفات إقلاع BIOS بذاكرة 64 كيلوبايت، وتوصي صراحةً باستخدام النطاق من 0000h:7C00h إلى 0000h:FFFFh كمساحة ذاكرة لسجل الإقلاع الرئيسي (MBR) و/أو سجل الإقلاع الظاهري (VBR). [ ٢ ] [ ١ ] يجب ألا يفترض رمز الإقلاع معالجات أفضل من معالجات Intel 8088 أو 8086 الأصلية (المستخدمة في الحاسوب الشخصي الأصلي)، ولا يفترض أي شيء بخصوص الحالة الدقيقة للأجهزة، أو نظام المقاطعات (يمكن تفعيل المقاطعات أو تعطيلها)، أو موقع وحجم المكدس. على الرغم من أن نظام BIOS الأصلي من IBM يُهيئ سجلات المعالج DS وES وSS إلى المقطع 0000h ويُبقي المكدس الأولي عند SS : SP = 0000h:0400h ، إلا أن هذا ليس شرطًا يُعتمد عليه، إذ لا تتبع جميع أنظمة BIOS ورموز MBR هذا الاصطلاح. يجب التعامل مع السجلات غير المذكورة أدناه على أنها غير مهيأة. لا يُسمح عادةً بالوصول المباشر إلى الأجهزة. بينما يتم عادةً إعداد جدول معلمات القرص (DPT/FDPB) في 0000h:0078h في الذاكرة بالفعل، يجب على VBR نقل (وربما إصلاح) DPT المشار إليه بواسطة متجه INT 1Eh إلى هذا الموقع (INT 1Eh ليس مقاطعة، ولكنه مؤشر بعيد إلى DPT).

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

يتم تحميل VBR في موقع الذاكرة 0000h: 7C00h[ 1 ] ويتم إعداد سجلات وحدة المعالجة المركزية التالية عندما يقوم محمل التمهيد السابق (أي عادةً BIOS أو MBR، ولكن ربما محمل تمهيد آخر) بتمرير التنفيذ إليه عن طريق القفز إلى 0000h: في الوضع الحقيقي7C00h لوحدة المعالجة المركزية .

  • CS : IP = 0000h: 7C00h(ثابت)

تستخدم بعض أنظمة BIOS الخاصة بأجهزة Compaq، عن طريق الخطأ، العنوان 07C0h:0000h بدلاً من ذلك. ورغم أن هذا العنوان يشير إلى نفس الموقع في ذاكرة الوضع الحقيقي، إلا أنه غير قياسي ويجب تجنبه، لأن كود VBR الذي يفترض قيمًا معينة للسجلات أو غير قابل لإعادة التموضع قد لا يعمل في غير هذه الحالة.

  • DL = وحدة محرك الإقلاع ( الأقراص المرنة / الأقراص المرنة الفائقة : 00h= الأول، 01h= الثاني، ...، 7Eh؛ الأقراص الثابتة / محركات الأقراص القابلة للإزالة : 80h= الأول، 81h= الثاني، ...، FEh؛ القيمتان 7Fhو FFhمحجوزتان لذاكرة القراءة فقط / محركات الأقراص البعيدة ويجب عدم استخدامهما على القرص ). [ 3 ] يدعم BIOS من IBM، بالإضافة إلى معظم أنظمة BIOS الأخرى، وحدة DL. من المعروف أن BIOS الخاص بجهاز Toshiba T1000 لا يدعمها بشكل صحيح، وتستخدم بعض أنظمة BIOS القديمة من Wyse 286 قيم DL أكبر من أو تساوي 2 للأقراص الصلبة. عادةً ما تحصل ذاكرات USB المُهيأة كأقراص مرنة فائقة على تعيين DL = 00hأو 01h، ومع ذلك، تعرض بعض أنظمة BIOS النادرة ذاكرات USB المُهيأة كمحركات أقراص قابلة للإزالة بشكل خاطئ على أنها DL = 01hأيضًا، بدلاً من استخدام DL = 80h. تقليديًا، كانت القيمتان 00hو فقط 80hتُمرر بواسطة BIOS أثناء الإقلاع، وكانت العديد من قطاعات الإقلاع مُبرمجة مسبقًا للعمل بقيم ثابتة على أي حال. تسمح مواصفات BIOS للتوصيل والتشغيل ومواصفات إقلاع BIOS (BBS) للأجهزة الأخرى بأن تصبح قابلة للإقلاع أيضًا. [ 2 ] [ 4 ] يوصي الأخير أيضًا بأن تستخدم رموز MBR وVBR قيمة DL بدلًا من القيم الافتراضية المُبرمجة داخليًا. [ 2 ] (ملاحظة: تتجاهل VBRs في أنظمة MS-DOS / PC DOS و OS/2 قيمة DL المُقدمة ، وتسترجع بدلًا منها القيمة المخزنة عند الإزاحة في كتلة معلمات BIOS الموسعة (EBPB)، أو عند إزاحة القطاع في إصدارات DOS من 3.2 إلى 3.31. تستخدم بعض إصدارات DR-DOS قيمة DL بدءًا من الإصدار 7.02. تستخدم VBRs في DR-DOS 7.07 قيمة DL افتراضيًا وتتجاهل قيمة BPB، ولكن يمكن استخدامها لإعادة تفعيل السلوك القديم المتمثل في استخدام قيمة BPB، أو حتى فرض تخزين وحدة محرك تمهيد معينة هناك. [ 3 ] في وحدات تخزين FAT32 ، يستفيد FreeDOS من قيمة DL أيضًا، بينما يستفيد منها في وحدات تخزين FAT12 / FAT16 فقط، إذا تم ضبط قيمة BPB على .) +19h+1FDhSYS /O[:nnn]nnnFFh
  • البت الخامس من DH = 0: الجهاز مدعوم عبر المقاطعة 13h ؛ وإلا: لا يهم (يجب أن يكون صفرًا). يدعم بعض أنظمة BIOS من IBM خاصية DH. تحتفظ بعض رموز MBR وVBR بقيمة DH.

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

  • DL = وحدة محرك الإقلاع (انظر أعلاه)
  • ES : DI = يشير إلى " $PnP" بنية فحص التثبيت

تُمكّن هذه المعلومات مُحمّل الإقلاع (في سجل الإقلاع الرئيسي أو سجل الإقلاع الظاهري) من التفاعل الفعال مع نظام الإدخال والإخراج الأساسي (BIOS) أو طبقة PnP/BBS المُخزّنة في الذاكرة لضبط ترتيب الإقلاع، وما إلى ذلك. مع ذلك، تتجاهل معظم سجلات الإقلاع الرئيسية والظاهرية القياسية هذه المعلومات. من الناحية المثالية، يتم تمرير ES:DI، ولكن أنظمة التشغيل المُفعّلة بتقنية PnP عادةً ما تحتوي على آليات احتياطية لاسترجاع نقطة دخول PnP BIOS لاحقًا، لذا لا تعتمد معظم أنظمة التشغيل على هذه الآلية. يمكن استخدام المعلومات الموجودة في ES:DI كدليل - وفقًا لمواصفات PnP BIOS، يمكن العثور على بنية فحص التثبيت "$PnP" من خلال البحث عن توقيع سلسلة ASCII "$PnP" في ذاكرة النظام بدءًا من F0000h إلى FFFFFh عند كل حد 16 بايت.

في حالة الوسائط المقسمة، عندما يتم تشغيل VBR بواسطة MBR (أو برنامج تحميل مختلف) بدلاً من BIOS، فإن العديد من التطبيقات تمرر معلومات إضافية إلى VBR إلى جانب DL فقط (وأحيانًا DH و ES:DI أيضًا):

  • يشير DS : SI إلى مدخل جدول تقسيم MBR ذي 16 بايت (في MBR المُعاد توجيهه) المُطابق لـ VBR المُفعّل. يعتمد نظام PC-MOS 5.1 على هذا المدخل للإقلاع إذا لم يكن أي قسم في جدول التقسيم مُحددًا كقسم قابل للإقلاع. بالاقتران مع LOADER، تستخدم قطاعات الإقلاع في Multiuser DOS و REAL/32 هذا المدخل لتحديد موقع قطاع الإقلاع للقسم النشط (أو مُحمّل إقلاع آخر مثل IBMBIO.LDR في موقع ثابت على القرص) إذا تعذر العثور على ملف الإقلاع (LOADER.SYS). يستخدم كل من PTS-DOS 6.5 و S/DOS 1.0 هذا المدخل بالاقتران مع ميزة Advanced Active Partition (AAP). بالإضافة إلى دعم LOADER وAAPs، يمكن لنظام DR-DOS 7.07 استخدام هذا المدخل لتحديد طريقة الوصول INT 13h اللازمة عند استخدام رمز VBR المزدوج CHS/LBA. يُوفّر كود سجل التمهيد الرئيسي (MBR) لأنظمة التشغيل OS/2 وMS-DOS (قبل الإصدار 7.0) وPC DOS (حتى الإصدار 7.10) و Windows NT (حتى عام 2007 تقريبًا) نفس هذه الواجهة، على الرغم من أن هذه الأنظمة لا تستخدمها. يستخدم سجل التمهيد الرئيسي المُثبّت بواسطة Windows NT 6.0 (والإصدارات الأحدث) سجلات أخرى ، وبالتالي فهو غير متوافق مع هذه الإضافات. في حين أن بعض الإضافات تعتمد فقط على مدخل جدول التقسيم ذي الـ 16 بايت، قد تتطلب إضافات أخرى وجود جدول التقسيم الكامل ذي الـ 4 (أو 5) مداخل.

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

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

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

  • EAX = 54504721h(" !GPT")
  • DL = وحدة محرك الإقلاع (انظر أعلاه)
  • ES:DI = يشير إلى $PnPبنية فحص التثبيت " " (انظر أعلاه)
  • يشير DS:SI إلى بنية تسليم MBR هجينة، تتكون من مدخل جدول تقسيم MBR وهمي بحجم 16 بايت (مع ضبط جميع البتات باستثناء علامة التمهيد عند الإزاحة +0hونوع التقسيم عند الإزاحة +4h) متبوعًا ببيانات إضافية. يتوافق هذا جزئيًا مع امتداد DS:SI الأقدم المذكور أعلاه، إذا كانت هذه الامتدادات الأقدم تتطلب فقط مدخل التقسيم بحجم 16 بايت، وليس جدول التقسيم بأكمله.

انظر أيضاً

ملحوظات

  1. التوقيع عند الإزاحة+1FEhفي قطاعات الإقلاع هو55h AAh، أي55hعند الإزاحة+1FEhوAAhعند الإزاحة+1FFh. بما أنه يجب افتراض تمثيل little-endian في سياق أجهزة IBM PC المتوافقة، يمكن كتابة هذا ككلمة 16 بتAA55hفي برامج معالجات x86 (لاحظ تبديل الترتيب)، بينما يجب كتابته كـ55AAhفي برامج معمارية وحدة المعالجة المركزية الأخرى التي تستخدم تمثيل big-endian . نظرًا لأن هذا قد تم الخلط بينه عدة مرات في الكتب وحتى في وثائق Microsoft المرجعية الأصلية،تستخدم هذه المقالة التمثيل القائم على الإزاحة على مستوى البايت على القرص لتجنب أي سوء فهم محتمل.

مراجع

  1. ١ ٢ ٣ ٤ ٥ بول، ماتياس ر. (١٩٩٧-١٠-٠٢) [١٩٩٧-٠٩-٢٩]. "تحديث Caldera OpenDOS 7.01/7.02 ألفا ٣ IBMBIO.COM - README.TXT وBOOT.TXT - وصف موجز لكيفية تشغيل OpenDOS" . مؤرشف من الأصل في ٢٠٠٣-١٠-٠٤ . تم الاطلاع عليه في ٢٠٠٩-٠٣-٢٩ .
  2. ١ ٢ ٣ ٤ شركة كومباك للحواسيب ؛ شركة فينيكس تكنولوجيز المحدودة ؛ شركة إنتل (١١ يناير ١٩٩٦). مواصفات إقلاع نظام الإدخال والإخراج الأساسي (BIOS) ١.٠١ (ملف PDF) . ١.٠١. مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ ١٤ أبريل ٢٠١٦.
  3. ١ ٢ بول، ماتياس ر. (١٤-٠٨-٢٠١٧) [٠٧-٠٨-٢٠١٧]. "الملحمة المستمرة لنظام التشغيل ويندوز ٣.١ في الوضع المحسّن على جهاز أومني بوك ٣٠٠" . متحف آلات حاسبة HP (MoHPC ). مؤرشف من الأصل في ١-٠٥-٢٠١٨ . تم الاسترجاع في ١-٠٥-٢٠١٨ . [...] SYS [...] /O[:nnn] تجاوز وحدة محرك الإقلاع المُبلغ عنها في IPL (n=٠..١٢٦، ١٢٨..٢٥٤). [...] تجهيز القرص الهدف... اختيار قطاع إقلاع FAT١٢ CHS (يتطلب من IPL الإبلاغ عن وحدة الإقلاع). التعامل مع الهدف كقرص مرن أو قرص فائق المرونة (وحدة محرك الإقلاع ٠). كتابة قطاع إقلاع جديد... [...]
  4. ١ ٢ شركة كومباك للكمبيوتر ؛ شركة فينيكس تكنولوجيز المحدودة ؛ شركة إنتل (٥ مايو ١٩٩٤). مواصفات BIOS للتوصيل والتشغيل ١.٠أ (ملف PDF) . ١.٠أ. مؤرشف من الأصل (ملف PDF) بتاريخ ٢٠١٨-٠٢-٠٢.
  5. إليوت، روبرت (4 يناير 2010). "ملحق رمز التمهيد الهجين EDD-4 MBR" (ملف PDF) . هيوليت-باكارد ، اللجنة الفنية T13. e09127r3. مؤرشف (ملف PDF) من الأصل بتاريخ 1 مايو 2018. تم الاطلاع عليه بتاريخ 1 مايو 2018 .

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