الوحدة 2 · CS351

🎯 أهداف التعلم

Process Memory Layout / هيكل ذاكرة العملية 0x00000000 0xFFFFFFFF Memory Addresses / عناوين الذاكرة Stack المكدس Unallocated Memory ذاكرة غير مخصصة Heap الكومة Data Segment قسم البيانات Text (Code) Segment قسم النص (الكود) Local variables, function calls المتغيرات المحلية، استدعاءات الدوال Dynamic memory (malloc/new) الذاكرة الديناميكية Global & static variables المتغيرات العامة والثابتة Compiled machine code كود الآلة المترجم
Admitted قبول Scheduler dispatch جدولة Interrupt مقاطعة I/O or event wait انتظار حدث I/O or event completion اكتمال الحدث Exit إنهاء New جديد Ready مستعد Running قيد التنفيذ Waiting في الانتظار Terminated منتهي
Time الزمن Process P0 العملية P0 Operating System نظام التشغيل Process P1 العملية P1 executing قيد التنفيذ Save state into PCB0 حفظ الحالة في PCB0 Reload state from PCB1 استعادة الحالة من PCB1 executing قيد التنفيذ Save state into PCB1 حفظ الحالة في PCB1 Reload state from PCB0 استعادة الحالة من PCB0 executing قيد التنفيذ interrupt or system call مقاطعة أو نداء نظام resume استئناف interrupt or system call مقاطعة أو نداء نظام resume استئناف idle خامل idle خامل idle خامل
c
/* Producer Process - Shared Memory */
item next_produced;
while (true) {
    /* produce an item in next produced */
    while (((in + 1) % BUFFER_SIZE) == out)
        ; /* do nothing - buffer is full */
    buffer[in] = next_produced;
    in = (in + 1) % BUFFER_SIZE;
}
c
/* Consumer Process - Shared Memory */
item next_consumed;
while (true) {
    while (in == out)
        ; /* do nothing - buffer is empty */
    next_consumed = buffer[out];
    out = (out + 1) % BUFFER_SIZE;
    /* consume the item in next consumed */
}
(a) Shared Memory (أ) الذاكرة المشتركة (b) Message Passing (ب) تمرير الرسائل User Space مساحة المستخدم Process A عملية أ Process B عملية ب Shared Memory ذاكرة مشتركة Read / Write قراءة / كتابة Read / Write قراءة / كتابة User Space مساحة المستخدم Kernel Space مساحة النواة Process A عملية أ Process B عملية ب Message Queue طابور الرسائل Send إرسال Receive استقبال
Shared MemoryMessage Passing
Single-threaded Process عملية أحادية الترابط Code الكود Data البيانات Files الملفات Thread / مسار التنفيذ Registers المسجلات PC عداد البرنامج Stack المكدس Multi-threaded Process عملية متعددة الترابط Code الكود Data البيانات Files الملفات Thread 1 / مسار 1 Registers المسجلات PC عداد البرنامج Stack المكدس Thread 2 / مسار 2 Registers المسجلات PC عداد البرنامج Stack المكدس Thread 3 / مسار 3 Registers المسجلات PC عداد البرنامج Stack المكدس
User Space / مساحة المستخدم Kernel Space / مساحة النواة Many-to-One متعدد إلى واحد One-to-One واحد إلى واحد Many-to-Many متعدد إلى متعدد Multiplexer / معدد
Many-to-OneOne-to-One
🎓

حديث البروفيسور

❓ اسأل البروفيسور

البطاقات التعليمية

اختبر نفسك

1 / 10 🎯 نتيجتك: 0

🔐 خزنة الامتحان

⚠️ فخ (Trap)
🔑 مفهوم أساسي (Key Concept)
🤫 سر (Secret)
⚠️ فخ (Trap)
🔑 مفهوم أساسي (Key Concept)