في الأيام الأولى من عصر الحوسبة، كان هناك قيد يمكن اعتباره أحد أعظم العيوب في تاريخ التكنولوجيا. كان هذا القيد هو حاجز 640 كيلو بايت الشهير على أجهزة الكمبيوتر الشخصية. ما الذي حدث لهذا القيد؟
لماذا 640 كيلو؟
السؤال الأول الذي يجب أن نفكر فيه هو لماذا كانت أجهزة الكمبيوتر الشخصية على الأرض تقتصر على 640 كيلوبايت من ذاكرة الوصول العشوائي. وهذا مبلغ زهيد وفقاً لمعايير اليوم، حيث تتفاخر هواتفنا بعدة غيغابايت دون تفكير. ولكن إذا عدنا إلى أوائل ثمانينيات القرن العشرين، فسوف تجد نفسك في عالم تكنولوجي مختلف تماماً.
تم طرح جهاز الكمبيوتر الشخصي الأصلي من إنتاج شركة IBM، وهو جهاز IBM PC 5150، في عام 1981، وكان مزودًا بوحدة معالجة مركزية تسمح بحد أقصى 1 ميجابايت من ذاكرة الوصول العشوائي القابلة للعنونة. ولكن لماذا تم تحديد حد 640 كيلو بايت لذاكرة الوصول العشوائي للنظام؟
احتفظت شركة IBM بمساحة عنوان الذاكرة المتبقية لاستخدامات أخرى مثل ذاكرة القراءة فقط (ROM) والأجهزة الطرفية. كان هذا تقسيمًا معقولًا في الواقع، بالنظر إلى التطبيقات والقدرات المادية المحدودة في ذلك الوقت.
وقد تم اقتباس تصريحات بيل جيتس بشكل خاطئ حيث قال: “640 ألف دولار يجب أن تكون كافية لأي شخص”. في حين أنه نفى الإدلاء بهذا التصريح على الإطلاقإنه يجسد روح العصر الذي بدا فيه 640 كيلو بايت بمثابة كمية هائلة من الذاكرة. من قد يحتاج إلى المزيد؟
المفاجأة في القصة: لم يكن ذلك كافيا!
كما قد لا تصاب بالصدمة عندما تسمع، بدأت البرمجيات في النمو من حيث التعقيد والتطور. وكان مطورو الألعاب وشركات برمجيات معالجة الكلمات وغيرهم من العقول المبدعة يتوقون إلى المزيد من الذاكرة.
فجأة، لم يعد جهاز 640K ساحة لعب كبيرة؛ بل أصبح صندوقًا خانقًا، وشعر مطورو البرمجيات بالضغط الشديد.
التحرر من قيود RAM
أظهرت شاشة اختبار الأجهزة Wolf3D توفر ذاكرة EMS وXMS.
أخذ المهندسون والمطورون حد الذاكرة 640 كيلوبايت كتحدٍ، فصمموا طرقًا للتغلب على قيود بنية جهاز الكمبيوتر الشخصي IBM.
كانت مواصفات الذاكرة الموسعة (EMS) ومواصفات الذاكرة الممتدة (XMS) حلين ذكيين للتغلب على حد الذاكرة 640 كيلو بايت في أجهزة الكمبيوتر الشخصية المبكرة.
استخدم EMS تقنية تسمى “تأطير الصفحات” و”التبديل بين البنوك”، حيث تم تقسيم الذاكرة الإضافية إلى صفحات وتبديلها داخل وخارج نافذة محددة في منطقة الذاكرة العلوية، بين 640 كيلو بايت و1 ميجا بايت. سمح هذا للبرامج بالوصول ديناميكيًا إلى صفحات مختلفة من الذاكرة الموسعة حسب الحاجة. تم تطوير EMS في الأصل بواسطة Lotus وIntel وMicrosoft ولهذا السبب عُرف لفترة وجيزة باسم ذاكرة ليم.
من ناحية أخرى، استفادت XMS من معالجات أحدث مثل Intel 80286، والتي سمحت بالوصول إلى المزيد من الذاكرة في وضع “محمي” خاص. كما استخدم هذا النهج أيضًا منطقة ذاكرة عالية (HMA) أعلى بقليل من حد 1 ميجا بايت واستخدم مدير ذاكرة ممتد لتوحيد طريقة وصول البرامج إلى هذه الذاكرة الإضافية. تم تطوير XMS أيضًا بواسطة Lotus وIntel وMicrosoft.
ساعد الانتقال إلى معالجات Intel 80286 و80386، مع قدرات إدارة الذاكرة المتقدمة، في تحطيم حاجز 640 كيلو بايت. سمحت هذه الرقائق بالوصول إلى كميات هائلة من الذاكرة لم يكن من الممكن تصورها قبل سنوات قليلة. يمكن لمعالج 80286 معالجة ما يصل إلى 16 ميجا بايت من ذاكرة الوصول العشوائي في الوضع المحمي ولكن ليس في الوضع الحقيقي، والذي كان متوافقًا مع تطبيقات DOS. يمكن لمعالج 80386 معالجة ما يصل إلى 4 جيجابايت من ذاكرة الوصول العشوائي في كلا الوضعين باستخدام تقنية تسمى الترحيل. ومع ذلك، يتطلب الوصول إلى الذاكرة الموسعة في الوضع الحقيقي برامج خاصة مثل موسعات DOS أو مديري الذاكرة.
دافع الألعاب للحصول على المزيد من الذاكرة
شهدت أواخر الثمانينيات وأوائل التسعينيات تطور ألعاب الفيديو من العفاريت البسيطة إلى العوالم الغامرة. تطلب هذا التطور المزيد من الذاكرة. كانت الألعاب مثل “Doom” في عام 1993، والتي تتطلب 4 ميجا بايت على الأقل من ذاكرة الوصول العشوائي، بمثابة لحظة حرجة حيث لم تعد 640 كيلو بايت كافية.
لقد أصبحت صناعة الألعاب بمثابة حافز للتقدم التكنولوجي. لقد عمل مطورو الألعاب عن كثب مع مصنعي الأجهزة، مما أدى إلى دفع عجلة الابتكار ودفع حدود الحوسبة الشخصية إلى الأمام. لقد كان من الواضح أن زيادة ذاكرة الوصول العشوائي لم تكن مجرد رغبة بل ضرورة لمواكبة الطموح المتزايد لعالم ألعاب الفيديو.
من الصعب أن نفكر في نوع آخر من البرامج يبرر مثل هذه الكميات العالية نسبيًا من ذاكرة الوصول العشوائي في وقت مبكر من سوق أجهزة الكمبيوتر الشخصية للمستخدمين المنزليين على وجه الخصوص. ومع ذلك، بمجرد أن يحتوي جهاز الكمبيوتر المنزلي على ذاكرة وصول عشوائي للألعاب التي تتطلب ذاكرة كبيرة، فهذا يعني أن المطورين غير المتخصصين في الألعاب يمكنهم أن يتوقعوا بشكل معقول المزيد من ذاكرة الوصول العشوائي لبرامجهم الخاصة. مع 80386، أصبح تعدد المهام شيئًا، مما يجعل الاستخدام الكامل للذاكرة المتاحة.
الآن، نحن لا نقول أن ألعاب الفيديو المبكرة كانت السبب الوحيد الذي دفعنا بسرعة إلى التوصل إلى حلول لمعالجة واستخدام المزيد من الذاكرة، ولكن لا شك أن مطوري الألعاب الأذكياء لعبوا دورًا حاسمًا في مساعدة أجهزة الكمبيوتر المتوافقة مع IBM في التغلب على هذه العقبة الخاصة.
الأيام السيئة القديمة
في المرة القادمة التي تقوم فيها بتحميل لعبتك المفضلة أو تطبيق الوسائط المتعددة على جهازك المتطور، خذ لحظة لتتذكر الأيام التي كانت فيها سرعة 640 كيلوبايت هي الحد الأقصى وقدر مدى التقدم الذي أحرزناه. ولعل الأهم من ذلك كله، لا تنس أن التكنولوجيا لا تزال قادرة على مفاجأتنا. ورغم أنك قد لا تعتقد أننا سنحتاج إلى أكثر من بضعة تيرابايتات من ذاكرة الوصول العشوائي التي يمكن أن يستوعبها جهاز كمبيوتر سطح المكتب الحديث، فمن الخطير دائمًا أن تكون واثقًا للغاية من أنك تعرف متى نكون قد قطعنا شوطًا طويلاً.