دورة مفاهيم الذاكرة
مسار تعليمي يشرح كيف يتحول الكود إلى متغيرات في Stack وكائنات في Heap وصفحات في RAM وSwap، مع ربط مباشر بمحاكي الذاكرة في NTF Hub.
ستفهم الفرق بين القيمة والمرجع، لماذا تتغير المصفوفة من أكثر من متغير، كيف يعمل Garbage Collection، ولماذا يصبح الجهاز بطيئًا عند امتلاء RAM وحدوث Swap وPage Faults.
مقدمة الذاكرة في الحاسب
ما معنى الذاكرة؟ ولماذا نحتاج RAM وStorage وCache؟
RAM ليست مكانًا سحريًا؛ هي مساحة عمل مؤقتة يستخدمها المعالج أثناء تنفيذ البرامج.
Stack: ذاكرة التنفيذ السريعة
فهم Stack Frame والمتغيرات البسيطة واستدعاء الدوال.
Stack منظم كطبقات: آخر شيء يدخل هو أول شيء يخرج.
Heap: الكائنات والمصفوفات
أين تعيش الكائنات؟ ولماذا المتغير يحتفظ بمرجع فقط؟
Heap مناسب للأشياء التي قد تعيش مدة أطول من سطر أو دالة واحدة.
القيم والمراجع References
لماذا تغيير b قد يغير a؟ وما الفرق بين primitive وreference؟
أغلب أخطاء المبتدئين تأتي من الظن أن المصفوفة تُنسخ كاملة.
Garbage Collection
كيف يعرف النظام أن الكائن لم يعد مستخدمًا؟
Garbage Collector لا يحذف لأنك كتبت null فقط؛ يحذف عندما لا يبقى أي مسار وصول للكائن.
Virtual Memory والصفحات
كيف يقسم النظام الذاكرة إلى Pages وFrames؟
الذاكرة الافتراضية تجعل كل برنامج يظن أن لديه مساحة كبيرة ومنظمة.
Swap و Page Fault
ماذا يحدث عندما لا تكون الصفحة المطلوبة في RAM؟
Page Fault ليس عطلًا دائمًا؛ هو إشارة أن الصفحة المطلوبة يجب إحضارها من التخزين.
خوارزميات الاستبدال FIFO / LRU / Optimal
كيف يقرر النظام أي صفحة يخرجها من RAM؟
الخوارزمية السيئة تزيد Page Faults وتسبب بطئًا ملحوظًا.
هياكل البيانات داخل الذاكرة
Queue وStack وLinked List وTree ككائنات وروابط في Heap.
هياكل البيانات ليست رسومات فقط؛ هي عقد ومراجع مخزنة في الذاكرة.
تطبيق عملي على المحاكي
كيف تستخدم محاكي الذاكرة في NTF Hub خطوة بخطوة.
التعلم الحقيقي يحدث عندما ترى الكود يتحول إلى Stack وHeap وRAM وSwap.