04-08-2019, 11:28 PM
إقتباس :يشرح الكتيب الأسس العملية لبرمجة أنظمة التشغيل بدءا من عملية إقلاع النظام بشكل مفصل. بالإضافة الى توضيح الشفرة المصدرية لكل جزئية في النظام ، وكحالة دراسية تم تطبيق المفاهيم على نظام تشغيل إقرأ. نظام إقرأ هو نظام تشغيل مبسط موجه للطلاب الراغبين في دراسة برمجة أنظمة التشغيلالمحتويات
إقتباس :
- الأساسيات Basics
- ١. مقدمة عن أنظمة التشغيل. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .٣
- ١.١ . ما هو نظام التشغيل . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ٦
- ١.١.١ . نظام التشغيل كجهاز تخيلي . . . . . . . . . . . . . . . . . . . . . . ٦
- ٢.١.١ . نظام التشغيل كمدير للموارد والعتاد . . . . . . . . . . . . . . . . . ٦
- ٢.١ . تاريخ أنظمة التشغيل . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ٦
- ١.٢.١ . الجيل الصفري ( 1624-1945): الحواسيب الميكانيكية . . . . 1
- ٢.٢.١ . الجيل الأول (١٩٤٥ - ١٩٥٥): الصمامات المفرغة و لوحات التوصيل
- ٢. معمارية حواسيب x86 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ١٥
- ١.٢ . معمارية النظام . . . . . . . . . . . . . . . . . . . . . . . . . . . . ١٦
- ١.١.٢ . مسار النظام System Bus . . . . . . . . . . . . . ١٦
- ٢.١.٢ . متحكم الذاكرة . . . . . . . . . . . . . . . . . . . . . . ١٨
- ٣.١.٢ . متحكم الإدخال والإخراج . . . . . . . . . . . . . . . ١٨
- ٢.٢ . المعالج . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
- ١.٢.٢ . دورة تنفيذ التعليمات . . . . . . . . . . . . . . . . . ٢٠
- ٢.٢.٢ . أنماط عمل المعالج CPU Modes . . . . . . . . ٢٠
- ٣.٢.٢ . النمط الحقيقي Real Mode . . . . . . . . . . . ٢٢
- ٤.٢.٢ . النمط المحمي Protected Mode . . . . . . . ٢٣
- ٢٥ x ٥.٢.٢ . معمارية معالجات . . . . . . . . . . . .. . . . 86
- II إقلاع الحاسب Bootingء . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ٣١
- ٣. إقلاع الحاسب ومحمل النظامBootloader . . . . . . . . . . . ٣٣
- ١.٣ . إقلاع الحاسب . . . . . . . . . . . . . . . . . . . . . . . . .. . . ٣٣
- ٢.٣ . محمل النظام Bootloader . . . . . . . . . . . . . . . . . . . ٣٤
- ٣.٣ . مخطط الذاكرة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ٣٥
- ٤.٣ . برمجة محمل النظام . . . . . . . . . . . . . . . . . . .. . . . ٣٦
- ١.٤.٣ . عرض رسالة ترحيبية . . . . . . . . . . . . . . . . .. . . . . ٣٧
- ٢.٤.٣ . معلومات قطاع الاقلاع . . . . . . . . . . . . . . . . . . . . . ٤٠
- ٣.٤.٣ . تحميل قطاع من القرص باستخدام المقاطعة int 0x13 . . . . . . ٤٨
- ٥.٣ . مقدمة الى نظام FAT12 . . . . . . . . . . . . . . . . . . . . . . . . . . ٥٠
- ١.٥.٣ . قيود نظام FAT12 . . . . . . . . . . . . . . . .. .. . . . . . . .٥١
- ٢.٥.٣ . هيكلة نظام FAT12 على القرص . . . . . . .. . . . . . . . ٥١
- ٣.٥.٣ . هيكلة القرص المرن . . . . . . . . . . . . . . . . . .. . . . . . ٥٤
- ٤.٥.٣ . القراءة و الكتابة من نظام FAT12 . . . . . . . . . . . . . . ٥٥
- ٤. برمجة محمل النظام - المرحلة الثانية . . . . . . . . . . . . . . . . . . . . ٦٧
- ١.٤ . الانتقال الى النمط المحمي . . . . . . . . . . . . . . . . . . . . ٦٧
- ١.١.٤ . جدول الواصفات العام Global Descriptor Table . . . .. . . . .. . . . ٦٨
- ٢.١.٤ . العنونة في النمط المحمي PMode Memory Addressing . . . . . . ٧٢
- ٣.١.٤ . الانتقال الى النمط المحمي . . . . . . . . . . . . . . . . .. . . . . . . . . . ٧٢
- ٢.٤ . تفعيل البوابة A20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . ٧٤
- ١.٢.٤ . متحكم لوحة المفاتيح 8042 والبوابة A20. . . . . . . . . . .. . . . . . .٧٤
- ٢.٢.٤ . طرق تفعيل البوابة A20. . . . . . . . . . . . .. . . . . .. . . . . .. . . . . ٧٥
- ٣.٤ . أساسيات الVGA . . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . . . .. . . . . . . . . . ٨١
- ١.٣.٤ . عنونة الذاكرة في متحكمات VGA . . . . . . . . ٨٢
- ٢.٣.٤ . طباعة حرف على الشاشة . . . . . . . . . . . . ٨٣
- ٣.٣.٤ . طباعة السلاسل النصية strings . . . . . . . . ٨٧
- ٤.٣.٤ . تحديث المؤشرHardware Cursor . . . . . . . ٨٩
- ٥.٣.٤ . تنظيف الشاشة Clear Screen. . . . . . . . . . ٩٢
- ٤.٤ . تحميل النواة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ٩٣
- III. النواة Kernel . . . . . . . . . . . . . . . . . . . . . . . .. . . . . .. . . . . . . . . . . .١٠١
- ٥. مقدمة حول نواة نظام التشغيل. . . . . .. . . . . .. . . . . .. . . . . . . . ١٠٣
- ١.٥ . نواة نظام التشغيل . . . . . .. . . . . . . . . . . . . . . . . . . . ١٠٣
- ١.١.٥ . مستويات التجريد . . . . . . . . . . . . . . . . . . . . . . . . . ١٠٤
- ٢.٥ . وظائف نواة النظام . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . ١٠٥
- ١.٢.٥ . إدارة الذاكرة . . . . . . . . . . . . . . . . .. . . . . . . . . . . . ١٠٥
- ٣.٥ . هيكلة وتصميم النواة . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ١٠٦
- ١.٣.٥ . النواة الضخمةMonolithic Kernel . . . . . . . . . . . . . . . ١٠٦
- ٢.٣.٥ . النواة المصغرة MicroKernel. . . . . . . . . . . . . . . . . . .١٠٧
- ٣.٣.٥ . النواة الهجينة Hybrid Kernel. . . . . . . . . . . . . . . . . .١٠٧
- ٤.٥ . برمجة نواة النظام . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . ١٠٧
- ١.٤.٥ . تحميل وتنفيذ نواة PE . . . . . . . . . . . . . . . . . . . . . . ١٠٨
- ٢.٤.٥ . تطوير بيئة التشغيل للغة سي++ . . . . . . . . . . . . . ١١١
- ٣.٤.٥ . نقل التنفيذ الى النواة . . . . . . . . . . . . . . . . . . .. . . . ١١٦
- ٥.٥ . نظرة على شفرة نظام إقرأ . . . . . . . . . . . . . . . . . . . . . . . . . ١١٧
- ٦.٥ . مكتبة السي القياسية . . . . . . . . . . . . . . . . . . . . . . . . .. . . ١١٨
- ٦. المقاطعات Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . ١٢٣
- ١.٦ . المقاطعات البرمجية Sotware Interrupts . . . . . . .. . . . . . . . .١٢٣
- ١.١.٦ . المقاطعات في النمط الحقيقي . . . . . . . . . . . . . . . . ١٢٣
- ٢.١.٦ . المقاطعات في النمط المحمي . . . . . . . . . . . . . . . . ١٢٥
- ٣.١.٦ . أخطاء المعالج . . . . . . . . . . . . . . . . . . . . . .. . . .. . . ١٢٧
- ٤.١.٦ . إنشاء جدول الواصفات العام GDT . . . . . . . . .. . . . .. . .١٢٩
- ٢.٦ . متحكم المقاطعات القابل للبرمجة Programmable Interrupt Controller. . . .١٣٣
- ١.٢.٦ . المقاطعات العتادية Hardware Interrupts. . . . . . . . . . ١٣٣
- ٢.٢.٦ . برمجة متحكم PIC . . . . . . . . . . . . . . . . . . . . . . . . . . ١٣٤
- ٣.٦ . المؤقتة Programmable Interval Timer. . . . . . . . . . . . . . . . . . ١٤١
- . ١.٣.٦ . برمجة المؤقتة PIT . . . . . . . . . . . . . . . . . . . . . . . . . ١٤٢
- ٤.٦ . توسعة طبقة HAL . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . ١٤٥
- ١.٤.٦ . دعم PIC . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . ١٤٥
- ٢.٤.٦ . دعم PIT . . . . . . . . . . . . . . . . . . . . . .. . . . . . .. . . . . . ١٤٩
- ٣.٤.٦ . واجهة HAL الجديدة . . . . . . . . . . . . .. . . .. . . . . . . . . ١٥٢
- ٧. إدارة الذاكرة . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . .. . . . . . . . . .. . . ١٦١
- ١.٧ . إدارة الذاكرة الفيزيائية Physical Memory Management . . . . . . . . . . ١٦١
- ١.١.٧ . حساب حجم الذاكرة . . . . . . . . . . . . . . . . . . . . ١٦٢
- ٢.١.٧ . خريطة الذاكرة Memory Map. . . . . . . . . . . . . . . . ١٦٤
- ٣.١.٧ . مواصفات الإقلاع المتعدد . . . . . . . . . . . . . . . . . . ١٦٧
- ٤.١.٧ . مدير الذاكرة الفيزيائية . . . . . . . . . . . . . . . . . . . . ١٧١
- ٢.٧ . إدارة الذاكرة التخيلية Virtual Memory Management. . . . . . . . . . . ١٧٧
- ٨. مشغلات الاجهزة Device Driver . . . . . . . . . . . . . . .١٨٣
- ١.٨ . برمجة مشغل لوحة المفاتيح Keyboard Driver. . . . . . . . . . . . . . . ١٨٣
- أ. ترجمة وتشغيل البرامج . . . . . . . . . . . . . . . . . . . . . . ١٩٥
- ا. ١. نظام ويندوز . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ١٩٥
- ا. ٢. نظام لينوكس . . . . . . . . . . . . . . . . . . . . . . . . . . . . ١٩٥
- ب. شفرة نظام إقرأ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ١٩٧