الذاكرة التقليدية

في إدارة الذاكرة في نظام التشغيل DOS ، الذاكرة التقليدية ، والتي تسمى أيضًا الذاكرة الأساسية ، هي أول 640 كيلوبايت من الذاكرة على أجهزة كمبيوتر IBM الشخصية أو الأنظمة المتوافقة معها. إنها ذاكرة القراءة والكتابة التي يمكن للمعالج معالجتها مباشرة لاستخدامها بواسطة نظام التشغيل وبرامج التطبيقات. ومع انخفاض أسعار الذاكرة بسرعة، أصبح قرار التصميم هذا قيدًا في استخدام سعات الذاكرة الكبيرة حتى ظهور أنظمة التشغيل والمعالجات التي جعلتها غير ذات صلة.
حاجز 640 كيلو بايت
| 0 كتلة | 1 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 64 كيلو بايت (مساحة ذاكرة منخفضة) |
| 1-كتلة | 2nd 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 128 كيلو بايت |
| 2-كتلة | 3 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 192 كيلو بايت |
| 3 كتل | الرابع 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 256 كيلو بايت |
| 4 كتل | 5 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 320 كيلو بايت |
| 5 كتل | 6 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 384 كيلو بايت |
| 6 كتل | 7 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 448 كيلو بايت |
| 7 كتل | 8 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 512 كيلو بايت |
| 8 كتل | 9 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 576 كيلو بايت |
| 9 كتل | 10 64 كيلو بايت | ذاكرة المستخدم العادي تصل إلى 640 كيلو بايت |
| كتلة أ | 11 64 كيلو بايت | ذاكرة الفيديو الممتدة ( EGA ) |
| كتلة ب | 12th 64 كيلوبايت | ذاكرة الفيديو القياسية ( MDA / CGA ) |
| كتلة سي | 13 64 كيلو بايت | توسيع ذاكرة القراءة فقط (XT، EGA، 3270 PC) |
| كتلة د | 14 64 كيلو بايت | استخدامات أخرى (خراطيش PCjr، LIM EMS ) |
| كتلة إلكترونية | 15 64 كيلو بايت | استخدامات أخرى (خراطيش PCjr، LIM EMS) |
| كتلة F | 16 64 كيلو بايت | نظام ROM-BIOS وROM-BASIC |
حاجز 640 كيلوبايت هو قيد معماري لأجهزة الكمبيوتر المتوافقة مع IBM PC . كانت وحدة المعالجة المركزية Intel 8088 المستخدمة في جهاز IBM PC الأصلي قادرة على معالجة 1 ميجا بايت (2 20 بايت)، حيث قدمت الشريحة 20 سطر عنوان . في تصميم الكمبيوتر الشخصي، كانت الذاكرة الأقل من 640 كيلوبايت مخصصة للذاكرة ذات الوصول العشوائي على اللوحة الأم أو على لوحات التوسعة، وكانت تسمى منطقة الذاكرة التقليدية.يُطلق على أول شريحة ذاكرة (64 كيلو بايت) من منطقة الذاكرة التقليدية اسم الذاكرة الدنيا أو منطقة الذاكرة المنخفضة . أما الـ 384 كيلو بايت المتبقية بعد منطقة الذاكرة التقليدية، والتي تسمى منطقة الذاكرة العليا (UMA)، فقد تم حجزها لاستخدام النظام والأجهزة الاختيارية. وقد تم استخدام منطقة الذاكرة العليا (UMA) في BIOS ROM ، والذاكرة الإضافية للقراءة فقط ، وملحقات BIOS لمحركات الأقراص الثابتة ومحولات الفيديو، وذاكرة محول الفيديو، وأجهزة الإدخال والإخراج الأخرى المخصصة للذاكرة . وقد وضع تصميم جهاز الكمبيوتر الشخصي IBM الأصلي خريطة ذاكرة Color Graphics Adapter (CGA) في UMA.
لقد نمت الحاجة إلى ذاكرة وصول عشوائي أكبر بسرعة أكبر من احتياجات الأجهزة لاستخدام العناوين المحجوزة، مما أدى في النهاية إلى تعيين ذاكرة وصول عشوائي في هذه المناطق العلوية غير المستخدمة لاستخدام كل المساحة القابلة للعنونة المتاحة. وقد أدى هذا إلى إدخال "ثقب" محجوز (أو عدة ثقوب) في مجموعة العناوين التي تشغلها الأجهزة والتي يمكن استخدامها لبيانات عشوائية. كان تجنب مثل هذه الثقب صعبًا وقبيحًا ولم يدعمه نظام التشغيل DOS أو معظم البرامج التي يمكن تشغيلها عليه. في وقت لاحق، تم استخدام المساحة بين الثقوب ككتل ذاكرة علوية (UMBs).
للحفاظ على التوافق مع أنظمة التشغيل والتطبيقات القديمة، ظل حاجز 640 كيلوبايت جزءًا من تصميم الكمبيوتر الشخصي حتى بعد استبدال 8086/8088 بمعالج Intel 80286 ، والذي يمكنه معالجة ما يصل إلى 16 ميجا بايت من الذاكرة في الوضع المحمي . كما ظل حاجز 1 ميجا بايت طالما كان 286 يعمل في الوضع الحقيقي ، حيث يتطلب نظام التشغيل DOS الوضع الحقيقي الذي يستخدم سجلات المقطع والإزاحة بطريقة متداخلة بحيث لا تكون العناوين التي تحتوي على أكثر من 20 بت ممكنة. لا يزال موجودًا في أجهزة الكمبيوتر المتوافقة مع IBM اليوم إذا كانت تعمل في الوضع الحقيقي مثل المستخدم بواسطة DOS. حتى أحدث أجهزة الكمبيوتر الشخصية من Intel لا تزال تحتوي على مساحة بين 640 و1024 كيلو بايت محجوزة. [3] [4] ومع ذلك، فإن هذا غير مرئي للبرامج (أو حتى معظم أنظمة التشغيل) على أنظمة التشغيل الأحدث (مثل Windows أو Linux أو Mac OS X ) التي تستخدم الذاكرة الافتراضية ، لأنها لا تدرك عناوين الذاكرة الفعلية على الإطلاق. بدلاً من ذلك، تعمل هذه الشركات داخل مساحة عنوان افتراضية، والتي يتم تعريفها بشكل مستقل عن عناوين ذاكرة الوصول العشوائي المتاحة. [5]
تتميز بعض اللوحات الأم بخيار "فتحة ذاكرة بحجم 15 ميجا بايت" المطلوب لبعض بطاقات الفيديو VGA التي تتطلب وصولاً حصريًا إلى ميجا بايت واحد لذاكرة الفيديو. يمكن لبطاقات الفيديو اللاحقة التي تستخدم ناقل AGP (مساحة ذاكرة PCI) أن تحتوي على ذاكرة بحجم 256 ميجا بايت مع حجم فتحة 1 جيجا بايت .
ذاكرة إضافية
كانت إحدى التقنيات المستخدمة في أجهزة كمبيوتر IBM XT المبكرة هي تثبيت ذاكرة وصول عشوائي إضافية في نطاق عناوين ذاكرة الفيديو ودفع الحد الأقصى إلى بداية محول العرض أحادي اللون (MDA). في بعض الأحيان، كان من الضروري استخدام برنامج أو فك تشفير عنوان مخصص حتى يعمل هذا. وقد أدى هذا إلى نقل الحاجز إلى 704 كيلوبايت (مع MDA/HGC) أو 736 كيلوبايت (مع CGA). [6] [7]
يمكن لمديري الذاكرة على الأنظمة القائمة على 386 (مثل QEMM أو MEMMAX (+V) في DR-DOS ) تحقيق نفس التأثير، بإضافة ذاكرة تقليدية عند 640 كيلو بايت وتحريك الحاجز إلى 704 كيلو بايت (حتى المقطع B000، بداية MDA/HGC) أو 736 كيلو بايت (حتى المقطع B800، بداية CGA). [7] لا يمكن استخدام سوى CGA في هذا الموقف، لأن ذاكرة الفيديو Enhanced Graphics Adapter (EGA) كانت مجاورة مباشرة لمنطقة الذاكرة التقليدية أسفل خط 640 كيلو بايت؛ لا يمكن استخدام نفس منطقة الذاكرة لكل من مخزن الإطارات لبطاقة الفيديو والبرامج المؤقتة.
سمحت وحدات إدارة الذاكرة الإضافية AllCard من All Computers لأجهزة XT- [8] [9] و Chargecard [10] لأجهزة الكمبيوتر من فئة 286/386SX، بالإضافة إلى اللوحة الإضافية ECM (الذاكرة التقليدية الممتدة) من MicroWay [11] بتعيين الذاكرة العادية في نطاق عنوان A0000–EFFFF ( سداسي عشري )، مما يوفر ما يصل إلى 952 كيلوبايت لبرامج DOS. احتاجت برامج مثل Lotus 1-2-3 ، التي كانت تصل إلى ذاكرة الفيديو مباشرة، إلى التصحيح للتعامل مع تخطيط الذاكرة هذا. لذلك، تمت إزالة حاجز 640 كيلوبايت على حساب توافق الأجهزة. [10]
كان من الممكن أيضًا استخدام إعادة توجيه وحدة التحكم [12] (إما عن طريق تحديد جهاز وحدة تحكم بديل مثل AUX: عند استدعاء COMMAND.COM في البداية أو باستخدام CTTY لاحقًا) لتوجيه الإخراج إلى واستقبال الإدخال من محطة طرفية صامتة أو كمبيوتر آخر يقوم بتشغيل محاكي المحطة الطرفية . بافتراض أن BIOS النظام لا يزال يسمح للجهاز بالتمهيد (وهو ما يحدث غالبًا على الأقل مع BIOSes لأجهزة الكمبيوتر المدمجة)، يمكن بعد ذلك إزالة بطاقة الفيديو في ما يسمى بالكمبيوتر بدون رأس تمامًا، ويمكن للنظام توفير إجمالي 960 كيلوبايت من ذاكرة DOS المستمرة لتحميل البرامج.
كان الاستخدام المماثل ممكنًا على العديد من أجهزة الكمبيوتر المتوافقة مع DOS ولكن ليس IBM مع تخطيط ذاكرة غير مجزأة، على سبيل المثال أنظمة ناقل SCP S-100 المجهزة ببطاقة وحدة المعالجة المركزية 8086 CP-200B وما يصل إلى ستة عشر بطاقة ذاكرة SCP 110A (مع 64 كيلوبايت من ذاكرة الوصول العشوائي على كل منها) بإجمالي يصل إلى 1024 كيلوبايت (بدون بطاقة فيديو، ولكن باستخدام إعادة توجيه وحدة التحكم، وبعد رسم خريطة ROM التمهيد / BIOS)، [13] Victor 9000 / Sirius 1 الذي يدعم ما يصل إلى 896 كيلوبايت، أو Apricot PC مع ذاكرة DOS أكثر استمرارية لاستخدامها في إصدارها المخصص من MS-DOS.
برنامج تشغيل DOS وTSRs
لم تكن أغلب البرامج القياسية المكتوبة لنظام التشغيل DOS تحتاج بالضرورة إلى 640 كيلوبايت أو أكثر من الذاكرة. وبدلاً من ذلك، كان من الممكن استخدام برامج التشغيل والأدوات المساعدة التي يشار إليها باسم برامج الإنهاء والبقاء المقيمة (TSRs) بالإضافة إلى برامج DOS القياسية. وكانت هذه البرامج والأدوات المساعدة تستخدم عادةً بعض الذاكرة التقليدية بشكل دائم، مما أدى إلى تقليل إجمالي الذاكرة المتاحة لبرامج DOS القياسية.
تتضمن بعض برامج تشغيل DOS وبرامج TSR الشائعة جدًا التي تستخدم الذاكرة التقليدية ما يلي:
- ANSI.SYS - دعم النص الملون ودقة النص المختلفة
- ASPIxDOS.SYS، ASPIDISK.SYS، ASPICD.SYS - يجب تحميل جميعها حتى تعمل محركات أقراص Adaptec SCSI وأقراص CDROM
- DOSKEY.EXE - يسمح باستعادة أوامر DOS المكتوبة مسبقًا باستخدام السهم لأعلى
- LSL.EXE، E100BODI.EXE (أو برنامج تشغيل شبكة آخر)، IPXODI.EXE، NETX.EXE - يجب تحميل كل هذه الملفات للوصول إلى حرف محرك أقراص خادم الملفات NetWare
- MOUSE.EXE - دعم أجهزة الماوس في برامج DOS
- MSCDEX.EXE - دعم الوصول إلى محرك الأقراص المضغوطة وحرف محرك الأقراص، يُستخدم مع برنامج تشغيل منفصل خاص بالشركة المصنعة. مطلوب بالإضافة إلى برامج تشغيل SCSI المذكورة أعلاه للوصول إلى جهاز أقراص مضغوطة SCSI.
- SBCONFIG.EXE - دعم لجهاز الصوت Sound Blaster 16 ؛ تم استخدام برنامج تشغيل يحمل اسمًا مختلفًا للعديد من بطاقات الصوت الأخرى، والتي تشغل أيضًا ذاكرة تقليدية.
- SMARTDRV.EXE - تثبيت ذاكرة التخزين المؤقتة للمحرك لتسريع عمليات القراءة والكتابة على القرص؛ على الرغم من أنه يمكنه تخصيص عدة ميغا بايتات من الذاكرة تتجاوز 640 كيلو بايت للتخزين المؤقت للمحرك، إلا أنه لا يزال بحاجة إلى جزء صغير من الذاكرة التقليدية للعمل.
كما يمكن أن نرى أعلاه، يمكن اعتبار العديد من هذه برامج التشغيل وبرامج TSR ضرورية عمليًا لتشغيل النظام بكامل ميزاته. ولكن في العديد من الحالات، كان يتعين على مستخدم الكمبيوتر اتخاذ خيار، ليقرر ما إذا كان سيتمكن من تشغيل برامج DOS قياسية معينة أو تحميل جميع برامج التشغيل وبرامج TSR المفضلة لديه. ومن المرجح أن يكون تحميل القائمة بأكملها الموضحة أعلاه غير عملي أو مستحيلًا، إذا كان المستخدم يريد أيضًا تشغيل برنامج DOS قياسي.
في بعض الحالات، كان لابد من تفريغ برامج التشغيل أو TSR من الذاكرة لتشغيل برامج معينة، ثم إعادة تحميلها بعد تشغيل البرنامج. بالنسبة لبرامج التشغيل التي لا يمكن تفريغها، تضمنت الإصدارات الأحدث من نظام التشغيل DOS إمكانية قائمة بدء التشغيل للسماح لمستخدم الكمبيوتر باختيار مجموعات مختلفة من برامج التشغيل وTSR لتحميلها قبل تشغيل برامج DOS القياسية التي تستهلك قدرًا كبيرًا من الذاكرة.
كتل الذاكرة العلوية وتحميلها بشكل مرتفع
مع نمو تطبيقات DOS وزيادة تعقيدها في أواخر الثمانينيات وأوائل التسعينيات، أصبح من الشائع تحرير الذاكرة التقليدية من خلال نقل برامج تشغيل الأجهزة وبرامج TSR إلى كتل الذاكرة العليا (UMBs) في منطقة الذاكرة العليا (UMA) عند التمهيد، من أجل تعظيم الذاكرة التقليدية المتاحة للتطبيقات. كان لهذا ميزة عدم الحاجة إلى تغييرات في الأجهزة، والحفاظ على توافق التطبيقات.
تم توفير هذه الميزة لأول مرة بواسطة منتجات تابعة لجهات خارجية مثل QEMM ، قبل أن يتم تضمينها في DR DOS 5.0 في عام 1990 ثم MS-DOS 5.0 في عام 1991. استخدم معظم المستخدمين برنامج التشغيل EMM386 المصاحب المقدم في MS-DOS 5، ولكن أثبتت المنتجات التابعة لجهات خارجية من شركات مثل QEMM شعبيتها أيضًا.
عند بدء التشغيل، يمكن تحميل برامج التشغيل بشكل مرتفع باستخدام التوجيه " DEVICEHIGH ="، بينما يمكن تحميل TSR بشكل مرتفع باستخدام التوجيهات " LOADHIGH "، أو " LH "، أو " HILOAD ". إذا فشلت العملية، فسيتم تحميل برنامج التشغيل أو TSR تلقائيًا في الذاكرة التقليدية العادية بدلاً من ذلك.
CONFIG.SYS ، تحميل ANSI.SYS في UMBs، لا يوجد دعم EMS ممكّن:
الجهاز=C:\DOS\HIMEM.SYS DEVICE=C:\DOS\EMM386.EXE NOEMS الجهاز مرتفع=C:\DOS\ANSI.SYS
AUTOEXEC.BAT ، تحميل MOUSE وDOSKEY وSMARTDRV في UMBs إذا كان ذلك ممكنًا:
اليسار C:\DOS\MOUSE.EXE اليسار C:\DOS\DOSKEY.EXE اليسار C:\DOS\SMARTDRV.EXE
إن قدرة إصدارات DOS 5.0 والإصدارات الأحدث على نقل كود نظامها الأساسي إلى منطقة الذاكرة العالية (HMA) من خلال الأمر DOS =HIGH أعطت دفعة أخرى لتحرير الذاكرة.
تحسين السائق وTSR
يمكن للوحات توسيع الأجهزة استخدام أي من مناطق الذاكرة العلوية لعنونة ROM، لذا فإن كتل الذاكرة العلوية كانت ذات أحجام مختلفة وفي مواقع مختلفة لكل جهاز كمبيوتر، اعتمادًا على الأجهزة المثبتة. يمكن أن تكون بعض نوافذ الذاكرة العلوية كبيرة والبعض الآخر صغيرًا. سيؤدي تحميل برامج التشغيل وTSRs عالية إلى اختيار كتلة ومحاولة ملاءمة البرنامج فيها، حتى يتم العثور على كتلة حيث تناسبها، أو يتم وضعها في الذاكرة التقليدية.
من الجوانب غير المعتادة في برامج التشغيل وTSRs أنها تستخدم كميات مختلفة من الذاكرة التقليدية و/أو العليا، بناءً على الترتيب الذي تم تحميلها به. يمكن استخدام هذا لصالحك إذا تم تحميل البرامج بشكل متكرر بترتيب مختلف، والتحقق لمعرفة مقدار الذاكرة الخالية بعد كل تبديل. على سبيل المثال، إذا كان هناك UMB بحجم 50 كيلوبايت وUMB بحجم 10 كيلوبايت، وتم تحميل برامج تحتاج إلى 8 كيلوبايت و45 كيلوبايت، فقد يتم وضع 8 كيلوبايت في UMB بحجم 50 كيلوبايت، مما يمنع الثانية من التحميل. سمحت الإصدارات اللاحقة من DOS باستخدام عنوان تحميل محدد لبرنامج تشغيل أو TSR، لتناسب برامج التشغيل/TSRs معًا بشكل أكثر إحكامًا.
في نظام التشغيل MS-DOS 6.0، قدمت شركة Microsoft برنامجًا يقوم بأتمتة عملية مطابقة الكتل هذه، ومطابقة الوظائف التي توفرها برامج إدارة الذاكرةMEMMAKER الخارجية . غالبًا ما لا يوفر هذا التحسين التلقائي نفس النتيجة التي يوفرها القيام به يدويًا، بمعنى توفير أكبر قدر من الذاكرة التقليدية المجانية.
في بعض الحالات، كتبت شركات تابعة لجهات خارجية برامج تشغيل خاصة متعددة الوظائف تجمع بين قدرات العديد من برامج تشغيل DOS القياسية وبرامج TSR في برنامج واحد مضغوط للغاية يستخدم بضعة كيلوبايت فقط من الذاكرة. على سبيل المثال، يتم دمج وظائف برنامج تشغيل الماوس وبرنامج تشغيل القرص المضغوط ودعم ANSI واستدعاء أوامر DOSKEY والتخزين المؤقت على القرص في برنامج واحد، مما يستهلك 1 - 2 كيلوبايت فقط من الذاكرة التقليدية للوصول العادي إلى برنامج التشغيل/المقاطعة، وتخزين بقية كود البرنامج متعدد الوظائف في ذاكرة EMS أو XMS.
موسعات DOS
لم يتم التغلب على الحاجز إلا مع وصول موسعات DOS ، والتي سمحت لتطبيقات DOS بالعمل في وضع محمي 16 بت أو 32 بت ، ولكن لم يتم استخدامها على نطاق واسع خارج ألعاب الكمبيوتر . باستخدام موسعات DOS 32 بت، يمكن أن تستفيد اللعبة من مساحة عنوان مسطحة 32 بت ومجموعة التعليمات الكاملة 32 بت بدون بادئات تجاوز المتعامل/العنوان 66h/67h. تتطلب موسعات DOS 32 بت دعم المترجم (مترجمات 32 بت) بينما عملت XMS و EMS مع مترجم قديم يستهدف تطبيقات DOS في الوضع الحقيقي 16 بت. كانت المواصفات الأكثر شيوعًا لموسعات DOS هي VCPI - ولاحقًا DPMI - المتوافقة مع Windows 3.x.
قد يكون DOS/4GW ، الذي يأتي مع Watcom ، أبرز موسع لنظام DOS متوافق مع DPMI . وكان شائعًا جدًا في الألعاب التي تعمل بنظام DOS. تتكون مثل هذه اللعبة إما من نواة DOS/4GW 32 بت، أو جزء صغير يحمل نواة DOS/4GW الموجودة في المسار أو في نفس الدليل و"ملف تنفيذي خطي" 32 بت. تتوفر أدوات مساعدة يمكنها إزالة DOS/4GW من مثل هذا البرنامج والسماح للمستخدم بتجربة أي من نسخ DOS/4GW العديدة والمحسنة ربما.
قبل موسعات DOS، إذا قام مستخدم بتثبيت ذاكرة إضافية وأراد استخدامها في نظام DOS، كان عليه أولاً تثبيت وتكوين برامج التشغيل لدعم مواصفات الذاكرة الموسعة (EMS) أو مواصفات الذاكرة الممتدة (XMS) وتشغيل البرامج التي تدعم أحد هذه المواصفات.
كان EMS عبارة عن مواصفات متاحة على جميع أجهزة الكمبيوتر، بما في ذلك تلك القائمة على Intel 8086 و Intel 8088 ، والتي سمحت للأجهزة الإضافية بتقسيم أجزاء صغيرة من الذاكرة إلى داخل وخارج ( التبديل المصرفي ) لمساحة عنونة "الوضع الحقيقي" (0x0400–0xFFFF). سمح هذا لبرامج DOS ذات الوضع الحقيقي ذات 16 بت بالوصول إلى عدة ميغا بايت من ذاكرة الوصول العشوائي من خلال ثقب في الذاكرة الحقيقية، عادةً (0xE000–0xEFFF). سيتعين على البرنامج بعد ذلك طلب الوصول إلى الصفحة صراحةً قبل استخدامها. يمكن بعد ذلك استخدام مواقع الذاكرة هذه بشكل تعسفي حتى يتم استبدالها بصفحة أخرى. هذا مشابه جدًا للذاكرة الافتراضية الحديثة المقسمة إلى صفحات . ومع ذلك، في نظام الذاكرة الافتراضية، يتعامل نظام التشغيل مع جميع عمليات التقسيم إلى صفحات ، بينما كان التقسيم إلى صفحات صريحًا مع EMS.
قدم XMS بروتوكولًا أساسيًا يسمح لبرامج DOS ذات 16 بت بتحميل أجزاء من ذاكرة 80286 أو 80386 الموسعة في ذاكرة منخفضة (العنوان 0x0400–0xFFFF). كان على برنامج تشغيل XMS النموذجي التبديل إلى الوضع المحمي من أجل تحميل هذه الذاكرة. تكمن المشكلة في هذا النهج في أنه أثناء الوضع المحمي 286، لا يمكن إجراء مكالمات DOS مباشرة. كان الحل البديل هو تنفيذ آلية استدعاء، تتطلب إعادة تعيين 286. في 286، كانت هذه مشكلة كبيرة. سمح Intel 80386 ، الذي قدم " وضع 8086 الافتراضي "، لنواة الضيف بمحاكاة 8086 وتشغيل نظام التشغيل المضيف دون الحاجة إلى إجبار المعالج على العودة إلى "الوضع الحقيقي". استخدم HIMEM.SYS 2.03 والإصدارات الأحدث الوضع غير الواقعي على وحدات المعالجة المركزية 80386 والإصدارات الأحدث بينما استخدم HIMEM.SYS 2.06 والإصدارات الأحدث LOADALL لتغيير السجلات الداخلية غير الموثقة على 80286، مما أدى إلى تحسين زمن انتقال المقاطعة بشكل كبير من خلال تجنب التبديل المتكرر للوضع الحقيقي/الوضع المحمي. [14]
يقوم Windows بتثبيت إصداره الخاص من HIMEM.SYS [15] على DOS 3.3 والإصدارات الأحدث. يقوم Windows HIMEM.SYS بتشغيل موفر خدمات XMS (n).0 في الوضع المحمي 32 بت لمدير الآلة الافتراضية لـ Windows، والذي يوفر بعد ذلك خدمات XMS (n-1).0 لأجهزة DOS وجهاز Windows ذي 16 بت (على سبيل المثال، HIMEM.SYS في DOS 7 هو XMS 3.0 ولكن تشغيل الأمر "MEM" في نافذة DOS في Windows 95 يعرض معلومات XMS 2.0).
انظر أيضا
- الذاكرة الموسعة (EMS)
- الذاكرة الممتدة (XMS)
- منطقة الذاكرة العالية (HMA)
- خدمات الوضع المحمي DOS (DPMS)
- تحميل عالي
- الوضع الطويل
- حد ذاكرة الوصول العشوائي
- منطقة البرنامج المؤقت (TPA)
- منطقة الذاكرة العليا (UMA)
- تقسيم الذاكرة x86
- حاجز 3 جيجا بايت
مراجع
- ^ نورتون، بيتر (1986). داخل جهاز كمبيوتر IBM الشخصي، منقح وموسع، برادي. ISBN 0-89303-583-1 ، ص 108.
- ^ براءة اختراع أمريكية رقم 4,926,322 - محاكاة برمجية للذاكرة المحولة بواسطة البنك باستخدام شاشة DOS افتراضية وإدارة ذاكرة مقسمة ، الشكل 1
- ^ Yao, Jiewen; Zimmer, Vincent J. (فبراير 2015). "الورقة البيضاء: جولة خارج تصميم خريطة ذاكرة BIOS في UEFI BIOS" (PDF) . شركة Intel Corporation . مؤرشف من الأصل (PDF) في 2015-09-30 . تم الاسترجاع في 2016-08-25 .
- ^ Russinovich, Mark Eugene ; Solomon, David A.; Ionescu, Alex (2012). Windows Internals . المجلد. الجزء 2 (الطبعة السادسة). Microsoft Press . ص. 322.
لاحظ الفجوة في نطاق عنوان الذاكرة من الصفحة 9F000 إلى الصفحة 100000...
- ^ ريختر، جيفري. تطبيقات البرمجة لنظام التشغيل مايكروسوفت ويندوز . ص 435 وما يليها.
- ^ Atkinson, Cy (2001). "ما هي الذاكرة العالية، ولماذا أهتم بها، وكيف يمكنني استخدامها؟". سان خوسيه، كاليفورنيا، الولايات المتحدة الأمريكية. مؤرشف من الأصل في 2016-03-03 . تم الاسترجاع في 2017-03-13 .
- ^ من قبل بول، ماثياس ر. (1997-07-30). NWDOS-TIPs — نصائح وحيل لتشغيل Novell DOS 7، مع نظرة سريعة على التفاصيل غير الموثقة والأخطاء والحلول البديلة [ NWDOSTIPs — نصائح وحيل لتشغيل Novell DOS 7، مع التركيز بشكل خاص على التفاصيل غير الموثقة والأخطاء والحلول البديلة ]. MPDOSTIP (باللغة الألمانية) (الطبعة الثالثة). مؤرشف من الأصل في 2016-06-06 . تم الاسترجاع في 2016-06-06 .(ملاحظة: إن ملف NWDOSTIP.TXT هو عمل شامل على Novell DOS 7 و OpenDOS 7.01 ، بما في ذلك وصف العديد من الميزات والأجزاء الداخلية غير الموثقة. وهو جزء من مجموعة MPDOSTIP.ZIP الأكبر التي يحتفظ بها المؤلف حتى عام 2001 ويتم توزيعها على العديد من المواقع في ذلك الوقت. يشير الرابط المقدم إلى إصدار أقدم من ملف NWDOSTIP.TXT تم تحويله إلى HTML.)
- ^ Petzold, Charles (1986). "خيارات أخرى لتوسيع أبعاد الذاكرة". مجلة PC . المجلد 5، العدد 11. ISSN 0888-8507.
- ^ "مراجعة AllCard". مجلة Personal Computer World . سبتمبر 1986. ص 138.
- ^ أب زيربي ، كلاوس (نوفمبر 1987). بورجويتز، أندرياس (محرر). "Speicher-Kredit - جميع بطاقات الشحن الخاصة بـ ATs". c't - مجلة لتقنية الكمبيوتر . بروفستاند (في المانيا). المجلد. 1987، لا. 11. شركة Verlag Heinz Heise GmbH & Co. KG . ص 58، 60. ISSN 0724-8679.
- ^ Petzold, Charles (1986-09-16). "Number Smasher/ECM". مجلة PC . لوحات التسريع. المجلد 5، العدد 15. ص 148، 150. ISSN 0888-8507. مؤرشف من الأصل في 2020-03-03 . تم الاسترجاع في 2020-03-03 .
- ^ دليل مستخدم Kontron - COMe-cBTi6R. مراجعة الوثيقة 1.0. Kontron . 2021. ص 37، 60، 64. مؤرشف من الأصل في 2023-09-23 . تم الاسترجاع في 2023-09-23 .(89 صفحة)
- ^ باترسون، تيم (2007-11-24). "أول آلة DOS". DosMan Drivel . مؤرشف من الأصل في 2021-09-18 . تم الاسترجاع 2021-12-23 . أعادت
شركة IBM
أيضًا تقديم قيود الذاكرة التي تجنبتها على وجه التحديد في تصميم وحدة المعالجة المركزية 8086 [card]. بالنسبة
لأجهزة الكمبيوتر S-100
، كان البديل منخفض التكلفة لاستخدام محطة كمبيوتر عادية هو استخدام بطاقة فيديو. ومع ذلك، استخدمت بطاقة الفيديو بعض مساحة عنوان الذاكرة. عادةً ما تستخدم ذاكرة القراءة فقط للتمهيد مساحة العنوان أيضًا. تم تصميم أنظمة SCP لاستخدامها مع محطة طرفية، ويمكن تعطيل ذاكرة القراءة فقط للتمهيد بعد التمهيد. أدى هذا إلى إتاحة مساحة عنوان الذاكرة بالكامل البالغة 1 ميجا بايت للذاكرة العشوائية. من ناحية أخرى، حددت شركة IBM مساحة العنوان في
جهاز الكمبيوتر
الخاص بها إلى 640 كيلو بايت من ذاكرة الوصول العشوائي بسبب الفيديو وذاكرة القراءة فقط للتمهيد/BIOS. وقد أطلق على هذا القيد اسم "حاجز DOS 640K"، ولكن لم يكن له أي علاقة بنظام
DOS
.
وقد استفادت
شركة Microsoft بشكل كامل من قدرة نظام
SCP
. وفي عام 1988، بعد سنوات من إغلاق SCP، كانت لا تزال تستخدم نظام SCP لمهمة واحدة فقط يمكنه القيام بها ("ربط الرابط"). وقد تم تجهيز جهازها بذاكرة وصول عشوائي (RAM) سعة 1 ميجابايت كاملة - 16 من بطاقات 64 كيلوبايت. ولم يكن من الممكن إيقاف تشغيل هذا الجهاز حتى تم تطوير أدوات برمجية 32 بت
لمعالج
Intel
386
.
- ^ "HIMEM.SYS، الوضع غير الواقعي، وLOADALL". متحف OS/2 .
- ^ "نظرة عامة على وظيفة إدارة الذاكرة في MS-DOS". دعم مايكروسوفت. 2003-05-12. مؤرشف من الأصل في 2007-02-12 . تم الاسترجاع في 2012-08-13 .
قراءة إضافية
- برينر ، رودولف (1986). “المزيد من 640 كيلو في أجهزة الكمبيوتر”. c't - مجلة für Computertechnik (باللغة الألمانية). المجلد. 1986، لا. 11. شركة Verlag Heinz Heise GmbH & Co. KG . ص. 94. ISSN 0724-8679.
- أندرياس لاندنبرجر (نوفمبر 1987). وايلد، مايكل (محرر). "Booten mit List - PC-Speicher über 640 KB voll genutzt". c't - مجلة لتقنية الكمبيوتر . الممارسة العملية (باللغة الألمانية). المجلد. 1987، لا. 11. شركة Verlag Heinz Heise GmbH & Co. KG . ص 154، 156. ISSN 0724-8679.
