logo

ما هو ثراش؟

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

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

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

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

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

ما هو ثراش

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

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

الخوارزميات أثناء السحق

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

1. استبدال الصفحة العالمية

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

2. استبدال الصفحة المحلية

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

أسباب الرعشة

قد تتسبب البرامج أو أحمال العمل في حدوث عطل، وينتج عنها مشكلات خطيرة في الأداء، مثل:

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

كيفية القضاء على السحق

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

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

تقنيات لمنع السحق

يعد استبدال الصفحة المحلية أفضل من استبدال الصفحة العالمية، ولكن استبدال الصفحة المحلية له العديد من العيوب، لذا فهو غير مفيد في بعض الأحيان. لذلك فيما يلي بعض التقنيات الأخرى المستخدمة للتعامل مع التحطيم:

1. نموذج المنطقة

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

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

2. نموذج مجموعة العمل

يعتمد هذا النموذج على مفهوم النموذج المحلي المذكور أعلاه.

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

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

الأفعى الكامل

تعتمد دقة مجموعة العمل على قيمة المعلمة A. إذا كانت A كبيرة جدًا، فقد تتداخل مجموعات العمل. من ناحية أخرى، بالنسبة للقيم الأصغر لـ A، قد لا تتم تغطية المنطقة بالكامل.

إذا كان D هو إجمالي الطلب على الإطارات وWSSأناهو حجم مجموعة العمل للعملية i،

د = ⅀ WSSأنا

الآن، إذا كان 'm' هو عدد الإطارات المتوفرة في الذاكرة، فهناك احتمالان:

  • D>m، أي أن إجمالي الطلب يتجاوز عدد الإطارات، ثم سيحدث الضرب لأن بعض العمليات لن تحصل على إطارات كافية.
  • د<=m, then there would be no thrashing.< li>

إذا كان هناك ما يكفي من الإطارات الإضافية، فيمكن تحميل بعض العمليات الإضافية في الذاكرة. من ناحية أخرى، إذا تجاوز مجموع أحجام مجموعة العمل توفر الإطارات، فيجب تعليق بعض العمليات (تبديلها من الذاكرة).

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

3. تردد خطأ الصفحة

الطريقة الأكثر مباشرة للتعامل مع الضرب هي الطريقة التي تستخدم مفهوم تردد خطأ الصفحة.

ما هو ثراش

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

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

يمكن إنشاء الحدود العليا والدنيا على معدل خطأ الصفحة المطلوب، كما هو موضح في الرسم البياني.

إذا انخفض معدل خطأ الصفحة عن الحد الأدنى، فيمكن إزالة الإطارات من العملية. وبالمثل، إذا تجاوز معدل أخطاء الصفحة الحد الأعلى، فيمكن تخصيص المزيد من الإطارات للعملية.

بمعنى آخر، يجب أن تظل الحالة الرسومية للنظام مقتصرة على المنطقة المستطيلة المتكونة في الرسم التخطيطي الموضح.

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