مخطط التخصيص أحادي المستخدم

مخطط التخصيص أحادي المستخدم (Single user contiguous scheme)، هو أول مخطط للذاكرة. وكان يعمل على النحو التالي: لتنفيذ البرنامج يجب أن يتم تحميله كاملاً في الذاكرة، مع مراعاة مساحة الذاكرة المتاحة له. فإذا كان حجم البرنامج كبير جداً وكانت المساحة المتوفرة لا تتيح له التحميل الكامل، فلا يمكن تنفيذ البرنامج. فقد كانت الحواسيب قديماً كبيرة البنية صغيرة مساحة الذاكرة.

وهذا يدل على أمر مهم جداً وهو أن الحواسيب يجب أن تحوي مساحة تسمح بتحميل البرنامج، وإن كانت المساحة لا تسمح بذلك فالحل يكمن بزيادة مساحة الذاكرة أو تقليل حجم البرنامج.

يعمل النظام أحادي المستخدم (Single-user system) بنفس الطريقة. إذ يعطى كل مستخدم وصولاً إلى الذاكرة الرئيسية كلها لكل وظيفة، وتتم معالجة الوظائف بشكل متسلسل، الواحدة تلو الآخرى. ولتخصيص الذاكرة يستخدم نظام التشغيل خوارزمية بسيطة (خطوة بخطوة لحل المشكلة).

 خوارزمية تحميل الوظيفة في نظام أحادي المستخدم 
 تخزين أول موقع في ذاكرة البرنامج داخل قاعدة السجل (base register) لحماية الذاكرة.
 نضع عداد للبرنامج (يتتبع مسار البرنامج في الذاكرة) يساوي عنوان أول موقع في الذاكرة.
 قراءة أول تعليمة في البرنامج.
 زيادة عداد البرنامج بعدد من البايت (من التعليمة).
 هل وصلنا إلى آخر تعليمة في البرنامح؟
 إذا نعم، توقف عن تحميل البرنامج.
 إذا لا، إتبع إلى خطوة رقم 6
 هل حجم عداد البرنامج أكبر من حجم الذاكرة؟
 إذا نعم، توقف عن تحميل البرنامج.
 إذا لا، إتبع إلى خطوة رقم 7
 حمل التعليمة إلى الذاكرة.
 اقرأ التعليمة التالية من البرنامج.
 إذهب إلى خطوة رقم 4.

يلاحظ هنا الحاجة إلى عنصرين فقط: سجل لتخزين قاعدة عنوان الذاكرة، وذاكرة لتتبع حجم البرنامج عند بداية القراءة في الذاكرة.

المشكلة في هذا النوع من مخططات تخصيص الذاكرة أنها لا تدعم البرمجة المتعددة multiprogramming، حيث تستطيع معالجة وظيفة واحدة فقط في ذات الوقت. على أية حال فإن في أواخر الخمسينيات وأوائل الستينيات من القرن الماضي كانت هناك حاجة لمخطط جديد لإدارة الذاكرة.

 المراجع 

 المصدر الأجنبي: Understanding Operating systems fourth edition، «فهم نظم التشغيل» الإصدار الرابع. تأليف «إدا م. فلاين»، جامعة بيتسبرغ، و «آن ماكليفر ماكهويز»، جامعة كارلو.

تصنيف:إدارة الذاكرة
تصنيف:خوارزميات إدارة الذاكرة
تصنيف:نظم تشغيل