الذاكرة الافتراضية
تعد الذاكرة الإفتراضية الظاهرية جزءًا شائعًا من معظم أنظمة التشغيل على أجهزة الكمبيوتر حاليًا لأنها توفر فائدة كبيرة للمستخدمين بتكلفة منخفضة نسبيًا.
معظم أجهزة الكمبيوتر اليوم لديها ما يشبه 64 أو 128 ميجابايت من ذاكرة الوصول العشوائي (RAM) المتاحة للاستخدام من قبل وحدة المعالجة المركزية. وفي كثير من الأحيان، لا يكفي هذا المقدار من ذاكرة الوصول العشوائي لتشغيل جميع البرامج التي يتوقع معظم المستخدمين تشغيلها في وقت واحد؛ على سبيل المثال، إذا قمت بتحميل نظام تشغيل Windows وبرنامج البريد إلكتروني ومتصفح الويب إلى ذاكرة الوصول العشوائي بشكل متزامن، فإن 64 ميغابايت لا تكفي لاحتواء كل شيء. وإذا لم يكن هناك شيء اسمه الذاكرة الافتراضية فيجب أن يقول جهاز الكمبيوتر الخاص بك: “عذرًا، لا يمكنك تحميل أي تطبيقات أخرى، يُرجى إغلاق تطبيق لتحميل تطبيق جديد، أما باستخدام الذاكرة الافتراضية فيمكن للكمبيوتر البحث عن مناطق RAM التي لم يتم استخدامها مؤخرًا ونسخها على القرص الثابت، مما يحرر مساحة في ذاكرة الوصول العشوائي لتحميل التطبيق الجديد، لأنه يقوم بذلك تلقائيًا، فأنت لا تعرف حتى أنه يحدث، ويجعل جهاز الكمبيوتر الخاص بك يبدو وكأنه يحتوي على مساحة ذاكرة وصول عشوائي غير محدودة على الرغم من أنه يحتوي على 32 ميغابايت فقط. ونظرًا لأن مساحة القرص الثابت أرخص بكثير من شرائح ذاكرة الوصول العشوائي، توفر الذاكرة الظاهرية أيضًا ميزة اقتصادية جيدة.
تُسمى المساحة من القرص الثابت التي تقوم بتخزين صورة RAM ملف صفحة، وينقل نظام التشغيل البيانات ذهابًا وإيابًا بين ملف الصفحة وذاكرة الوصول العشوائي. (على جهاز Windows، تحتوي ملفات الصفحات على ملحق .SWP.).
وبطبيعة الحال، فإن سرعة القراءة/ الكتابة لمحرك الأقراص الصلبة تكون أبطأ بكثير من ذاكرة الوصول العشوائي، وإذا كان على نظامك الاعتماد بشكل كبير على الذاكرة الظاهرية، فسوف تلاحظ انخفاضًا ملحوظًا في الأداء .
تاريخ ظهور الذاكرة الافتراضية
يعود الفضل إلى الفيزيائي الألماني فريتز رودولف غونتش في تطوير مفهوم الذاكرة الظاهرية في عام 1956. ثم في عام 1969، أظهر باحثو آي بي إم أن ما كان يسمى آنذاك بنظام تراكب الذاكرة الظاهرية عمل بشكل أفضل من الأنظمة اليدوية السابقة، واستخدمت الحاسبات الآلية والحواسيب الصغيرة في السبعينيات الذاكرة الظاهرية. ولم يتم تضمين تقنية الذاكرة الافتراضية في أجهزة الكمبيوتر الشخصية المبكرة لأن المطورين ظنوا أن نفاد الذاكرة لن يمثل مشكلة في هذه الأجهزة، إلى أن ثبت عكس ذلك، فقدمت Intel الذاكرة الظاهرية في المعالج 80286 في عام 1982.
كيفية إدارة الذاكرة الافتراضية
تحتوي أنظمة التشغيل على إعدادات افتراضية تحدد مقدار مساحة القرص الثابت المطلوب تخصيصها للذاكرة الظاهرية، سيعمل هذا الإعداد مع معظم التطبيقات والعمليات، ولكن قد يكون هناك أوقات يكون فيها من الضروري إعادة تعيين مقدار مساحة محرك الأقراص الثابتة المخصصة للذاكرة الظاهرية، مثل التطبيقات التي تعتمد على أوقات الاستجابة السريعة أو عندما يكون لدى الكمبيوتر عدة أقراص صلبة.
عند إعادة تعيين الذاكرة الظاهرية يدويًا، يجب تحديد الحد الأدنى والحد الأقصى لمقدار مساحة القرص الثابت المطلوب استخدامها للذاكرة الظاهرية. قد ينتج عن تخصيص مساحة صغيرة جدًا من الأقراص الصلبة للذاكرة الظاهرية جهاز كمبيوتر يعمل خارج ذاكرة الوصول العشوائي. وإذا احتاج النظام باستمرار إلى مساحة ذاكرة افتراضية أكثر، فقد يكون من الحكمة التفكير في إضافة ذاكرة وصول عشوائي أكبر.
إيجابيات استخدام الذاكرة الافتراضية
من بين الفوائد الأساسية للذاكرة الظاهرية قدرتها على التعامل مع ضعف عدد العناوين كذاكرة رئيسية، وذلك عن طريق استخدام القرص الصلب كمخزن مؤقت بينما تقوم وحدة إدارة الذاكرة بالكمبيوتر MMUs بترجمة عناوين الذاكرة الظاهرية إلى العناوين الفعلية عبر وحدة المعالجة المركزية. تستخدم البرامج عناوين افتراضية لتخزين التعليمات والبيانات، وعند تنفيذ أحد البرامج، يتم تحويل العناوين الظاهرية إلى عناوين الذاكرة الفعلية.
كما تعمل الذاكرة الافتراضية على تحرير التطبيقات من إدارة الذاكرة المشتركة وحفظ المستخدمين من الاضطرار إلى إضافة وحدات ذاكرة عند نفاد مساحة ذاكرة الوصول العشوائي.
أخيرًا إن استخدام الذاكرة الظاهرية له مفاضلاته، خاصة مع السرعة؛ فمن الأفضل بشكل عام أن يكون لديك ذاكرة فعلية قدر الإمكان بحيث تعمل البرامج مباشرة من ذاكرة الوصول العشوائي أو الذاكرة الفعلية، لأن استخدام الذاكرة الظاهرية يؤدي إلى إبطاء الكمبيوتر.
تعد الذاكرة الإفتراضية الظاهرية جزءًا شائعًا من معظم أنظمة التشغيل على أجهزة الكمبيوتر حاليًا لأنها توفر فائدة كبيرة للمستخدمين بتكلفة منخفضة نسبيًا.
معظم أجهزة الكمبيوتر اليوم لديها ما يشبه 64 أو 128 ميجابايت من ذاكرة الوصول العشوائي (RAM) المتاحة للاستخدام من قبل وحدة المعالجة المركزية. وفي كثير من الأحيان، لا يكفي هذا المقدار من ذاكرة الوصول العشوائي لتشغيل جميع البرامج التي يتوقع معظم المستخدمين تشغيلها في وقت واحد؛ على سبيل المثال، إذا قمت بتحميل نظام تشغيل Windows وبرنامج البريد إلكتروني ومتصفح الويب إلى ذاكرة الوصول العشوائي بشكل متزامن، فإن 64 ميغابايت لا تكفي لاحتواء كل شيء. وإذا لم يكن هناك شيء اسمه الذاكرة الافتراضية فيجب أن يقول جهاز الكمبيوتر الخاص بك: “عذرًا، لا يمكنك تحميل أي تطبيقات أخرى، يُرجى إغلاق تطبيق لتحميل تطبيق جديد، أما باستخدام الذاكرة الافتراضية فيمكن للكمبيوتر البحث عن مناطق RAM التي لم يتم استخدامها مؤخرًا ونسخها على القرص الثابت، مما يحرر مساحة في ذاكرة الوصول العشوائي لتحميل التطبيق الجديد، لأنه يقوم بذلك تلقائيًا، فأنت لا تعرف حتى أنه يحدث، ويجعل جهاز الكمبيوتر الخاص بك يبدو وكأنه يحتوي على مساحة ذاكرة وصول عشوائي غير محدودة على الرغم من أنه يحتوي على 32 ميغابايت فقط. ونظرًا لأن مساحة القرص الثابت أرخص بكثير من شرائح ذاكرة الوصول العشوائي، توفر الذاكرة الظاهرية أيضًا ميزة اقتصادية جيدة.
تُسمى المساحة من القرص الثابت التي تقوم بتخزين صورة RAM ملف صفحة، وينقل نظام التشغيل البيانات ذهابًا وإيابًا بين ملف الصفحة وذاكرة الوصول العشوائي. (على جهاز Windows، تحتوي ملفات الصفحات على ملحق .SWP.).
وبطبيعة الحال، فإن سرعة القراءة/ الكتابة لمحرك الأقراص الصلبة تكون أبطأ بكثير من ذاكرة الوصول العشوائي، وإذا كان على نظامك الاعتماد بشكل كبير على الذاكرة الظاهرية، فسوف تلاحظ انخفاضًا ملحوظًا في الأداء .
تاريخ ظهور الذاكرة الافتراضية
يعود الفضل إلى الفيزيائي الألماني فريتز رودولف غونتش في تطوير مفهوم الذاكرة الظاهرية في عام 1956. ثم في عام 1969، أظهر باحثو آي بي إم أن ما كان يسمى آنذاك بنظام تراكب الذاكرة الظاهرية عمل بشكل أفضل من الأنظمة اليدوية السابقة، واستخدمت الحاسبات الآلية والحواسيب الصغيرة في السبعينيات الذاكرة الظاهرية. ولم يتم تضمين تقنية الذاكرة الافتراضية في أجهزة الكمبيوتر الشخصية المبكرة لأن المطورين ظنوا أن نفاد الذاكرة لن يمثل مشكلة في هذه الأجهزة، إلى أن ثبت عكس ذلك، فقدمت Intel الذاكرة الظاهرية في المعالج 80286 في عام 1982.
كيفية إدارة الذاكرة الافتراضية
تحتوي أنظمة التشغيل على إعدادات افتراضية تحدد مقدار مساحة القرص الثابت المطلوب تخصيصها للذاكرة الظاهرية، سيعمل هذا الإعداد مع معظم التطبيقات والعمليات، ولكن قد يكون هناك أوقات يكون فيها من الضروري إعادة تعيين مقدار مساحة محرك الأقراص الثابتة المخصصة للذاكرة الظاهرية، مثل التطبيقات التي تعتمد على أوقات الاستجابة السريعة أو عندما يكون لدى الكمبيوتر عدة أقراص صلبة.
عند إعادة تعيين الذاكرة الظاهرية يدويًا، يجب تحديد الحد الأدنى والحد الأقصى لمقدار مساحة القرص الثابت المطلوب استخدامها للذاكرة الظاهرية. قد ينتج عن تخصيص مساحة صغيرة جدًا من الأقراص الصلبة للذاكرة الظاهرية جهاز كمبيوتر يعمل خارج ذاكرة الوصول العشوائي. وإذا احتاج النظام باستمرار إلى مساحة ذاكرة افتراضية أكثر، فقد يكون من الحكمة التفكير في إضافة ذاكرة وصول عشوائي أكبر.
إيجابيات استخدام الذاكرة الافتراضية
من بين الفوائد الأساسية للذاكرة الظاهرية قدرتها على التعامل مع ضعف عدد العناوين كذاكرة رئيسية، وذلك عن طريق استخدام القرص الصلب كمخزن مؤقت بينما تقوم وحدة إدارة الذاكرة بالكمبيوتر MMUs بترجمة عناوين الذاكرة الظاهرية إلى العناوين الفعلية عبر وحدة المعالجة المركزية. تستخدم البرامج عناوين افتراضية لتخزين التعليمات والبيانات، وعند تنفيذ أحد البرامج، يتم تحويل العناوين الظاهرية إلى عناوين الذاكرة الفعلية.
كما تعمل الذاكرة الافتراضية على تحرير التطبيقات من إدارة الذاكرة المشتركة وحفظ المستخدمين من الاضطرار إلى إضافة وحدات ذاكرة عند نفاد مساحة ذاكرة الوصول العشوائي.
أخيرًا إن استخدام الذاكرة الظاهرية له مفاضلاته، خاصة مع السرعة؛ فمن الأفضل بشكل عام أن يكون لديك ذاكرة فعلية قدر الإمكان بحيث تعمل البرامج مباشرة من ذاكرة الوصول العشوائي أو الذاكرة الفعلية، لأن استخدام الذاكرة الظاهرية يؤدي إلى إبطاء الكمبيوتر.