NTF Hub — دورة الذاكرة
Memory Course
← مسار الذاكرة

⚖️ خوارزميات الاستبدال FIFO / LRU / Optimal

كيف يقرر النظام أي صفحة يخرجها من RAM؟

الفكرة الأساسية: الخوارزمية السيئة تزيد Page Faults وتسبب بطئًا ملحوظًا.

1. الفكرة ببساطة

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

2. تمثيل بصري

Reference: 1 2 3 4 1 2 5 Frames: 3 Policy: FIFO / LRU / Optimal

3. مثال كود

FIFO: oldest page leaves
LRU: least recently used leaves
Optimal: page used farthest in future leaves

4. أين يظهر هذا في المحاكي؟

  • في تبويب المحاكاة الحية سترى أثر الكود على Stack وHeap.
  • في تبويب RAM / Swap سترى الصفحات تتحرك بين RAM وSSD.
  • في تبويب مقارنة الخوارزميات ستقارن عدد Page Faults.

5. سؤال سريع

س: ما الشيء الذي يجب أن تسأل عنه دائمًا عند رؤية متغير؟
ج: هل يخزن قيمة مباشرة، أم يخزن Reference لكائن في Heap؟