الترحيل في Operaنظام التشغيل (OS): ما هو، المزايا، مثال

⚡ ملخص ذكي

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

  • 📄 فريف: تقسم عملية الترحيل الذاكرة المنطقية إلى صفحات ذات حجم ثابت، والذاكرة الفعلية إلى إطارات متساوية، وترسم خريطة.ping صفحة واحدة لكل إطار.
  • 🗺️ جدول الصفحات: يستخدم نظام التشغيل جدول الصفحات لترجمة كل رقم صفحة منطقي إلى عنوان الإطار الفعلي الخاص به.
  • 🛡️ حماية: تحمي بتة صالحة/غير صالحة في كل إدخال من إدخالات جدول الصفحات الذاكرة وتحدد الصفحات التي يمكن للعملية الوصول إليها.
  • المزايا: يؤدي الترحيل إلى إزالة التجزئة الخارجية وتسهيل عملية التبديل.ping بين صفحات وإطارات متساوية الحجم، الأمر بسيط وسريع.
  • ⚠️ المفاضلات: قد يؤدي الترحيل إلى تجزئة داخلية وزيادة في حجم جدول الصفحات، بينما يستخدم التجزئة بدلاً من ذلك أجزاء ذات أحجام متغيرة تتطابق مع بنية البرنامج.
  • 🤖 زاوية الذكاء الاصطناعي: يقوم التعلم الآلي بتحسين قرارات استبدال الصفحات، ويساعد Copilot في كتابة رمز الترحيل وترجمة العناوين.

الترحيل في Operaنظام تينج

ما هو الترحيل في نظام التشغيل؟

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

مثال على الترحيل في نظام التشغيل

لفهم كيفية ربط الصفحات بالإطارات، لنأخذ مثالاً بسيطاً. إذا كان حجم الذاكرة الرئيسية 16 كيلوبايت وحجم الإطار 1 كيلوبايت، فإن الذاكرة الرئيسية تُقسّم إلى مجموعة من 16 إطاراً، حجم كل منها 1 كيلوبايت.

يحتوي النظام على أربع عمليات منفصلة، ​​هي A1 وA2 وA3 وA4، حجم كل منها 4 كيلوبايت. تُقسّم هذه العمليات إلى صفحات، حجم كل منها 1 كيلوبايت، بحيث يستطيع نظام التشغيل تخزين صفحة واحدة في إطار واحد.

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

مثال على الترحيل في نظام التشغيل مع تحميل الصفحات بشكل متجاور

في هذا المثال، يمكنك ملاحظة أن A2 وA4 تنتقلان إلى حالة الانتظار بعد فترة. ونتيجة لذلك، تصبح ثمانية إطارات فارغة، ويمكن تحميل صفحات أخرى في هذه الكتل الفارغة. أما العملية A5، التي يبلغ حجمها 8 صفحات (8 كيلوبايت)، فهي تنتظر في قائمة الانتظار الجاهزة.

مثال على الترحيل في نظام التشغيل مع تحميل العملية في إطارات غير متجاورة

يتوفر الآن ثمانية إطارات غير متجاورة في الذاكرة، وتتيح عملية الترحيل مرونة تخزين العملية في مواقع مختلفة. وهذا يسمح لنظام التشغيل بتحميل صفحات العملية A5 بدلاً من A2 وA4.

ما هي حماية الترحيل؟

تُحمى عملية الترحيل بإضافة بت إضافي يُسمى بت الصلاحية/عدم الصلاحية. وتتحقق حماية الذاكرة في الترحيل بربط بتات الحماية بكل صفحة. ترتبط هذه البتات بكل مدخل في جدول الصفحات، وتحدد مستوى الحماية المسموح به في الصفحة المقابلة.

مزايا الترحيل

فيما يلي مزايا استخدام طريقة التصفح:

  • إنه سهل الاستخدام إدارة الذاكرة الخوارزمية.
  • لا حاجة للتجزئة الخارجية.
  • مبادلةping يسهل ذلك بين الصفحات ذات الأحجام المتساوية وإطارات الصفحات.

عيوب الترحيل

فيما يلي عيوب وسلبيات نظام الترقيم:

  • قد يتسبب ذلك في تفتت داخلي.
  • تستهلك جداول الصفحات ذاكرة إضافية.
  • قد يؤدي الترحيل متعدد المستويات إلى زيادة الحمل المرجعي للذاكرة.

ما هو التقسيم؟

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

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

مزايا التقسيم

فيما يلي مزايا وفوائد التجزئة:

  • يوفر الحماية ضمن القطاعات.
  • يمكنك تحقيق المشاركة من خلال جعل الأجزاء تشير إلى عمليات متعددة.
  • لا يسبب ذلك تفتتًا داخليًا.
  • تستخدم جداول القطاعات ذاكرة أقل من الترحيل.

عيوب التجزئة

فيما يلي سلبيات وعيوب التجزئة:

  • في أسلوب التجزئة، تُحمّل العمليات وتُزال من الذاكرة الرئيسية. لذلك، تُقسّم مساحة الذاكرة الحرة إلى أجزاء صغيرة، مما قد يُسبب مشكلة التجزئة الخارجية.
  • إنها خوارزمية مكلفة لإدارة الذاكرة.

الأسئلة الشائعة

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

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

ذاكرة الترجمة السريعة (TLB) هي ذاكرة تخزين مؤقتة صغيرة وسريعة تخزن خريطة الصفحات إلى الإطارات الحديثةpings. يعمل على تسريع ترجمة العناوين عن طريق تجنب البحث الكامل في جدول الصفحات في الذاكرة للصفحات التي يتم الوصول إليها بشكل متكرر.

الصفحة هي كتلة ثابتة الحجم من عملية ما في الذاكرة المنطقية، بينما الإطار هو كتلة بنفس الحجم من الذاكرة الفعلية. تقوم عملية الترحيل بتحميل كل صفحة في إطار واحد فارغ بالضبط.

تقوم تقنية الترحيل عند الطلب بتحميل صفحة في الذاكرة فقط عندما يشير إليها البرنامج فعلياً، بدلاً من تحميل البرنامج بأكمله مسبقاً. هذا يوفر الذاكرة ويسرع بدء تشغيل البرنامج.

يُهدر التجزئة الداخلية مساحةً داخل الإطار المُخصّص عندما لا تملأ الصفحة الإطار بالكامل. أما التجزئة الخارجية فتترك فجواتٍ متفرقةً بين المساحات المُخصّصة. يُزيل الترحيل التجزئة الخارجية، ولكنه قد يُسبب التجزئة الداخلية أيضًا.

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

نعم. يمكن لـ GitHub Copilot إنشاء أكواد استبدال الصفحات FIFO وLRU والمثالية، بالإضافة إلى محاكاة الترحيل في لغة C. Java أو Pythonتحقق دائمًا من عدد الأخطاء والحالات الشاذة قبل الاعتماد على المخرجات.

تلخيص هذه التدوينة بـ: