SlideShare une entreprise Scribd logo
1  sur  12
Télécharger pour lire hors ligne
February 6, 2015
‫الطالبين‬ ‫تنفيذ‬
‫ونوس‬ ‫يوشع‬–‫قطريب‬ ‫نور‬
‫وبي‬ ‫د.أحمد‬ ‫إشراف‬
Real Time Systems
‫مادة‬‫الحقيقي‬ ‫الزمن‬ ‫نظم‬
1
RealTimeSystems|6/2/2015
‫المحتويات‬ ‫فهرس‬
‫عامة‬ ‫مقدمة‬…........................................................................................................................2
‫التشغيل‬ ‫نظام‬...........................................................................................................................2
‫التشغيل‬ ‫نظام‬ ‫تطور‬....................................................................................................................3
‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬.............................................................................................................4
‫نظام‬ ‫عن‬ ‫لمحة‬QNX Neutrino..................................................................................................4
‫الذاكرة‬ ‫إدارة‬...........................................................................................................................6
‫الملفات‬ ‫إدارة‬...........................................................................................................................7
‫الجدولة‬.................................................................................................................................8
‫النيسب‬ ‫حاالت‬.........................................................................................................................8
‫للمزامنة‬ ‫المقدمة‬ ‫التسهيالت‬……………........................................................................................01
‫الخاتمة‬……………..............................................................................................................00
‫المراجع‬…………….............................................................................................................00
2
RealTimeSystems|6/2/2015
‫عامة‬ ‫مقدمة‬:
‫حقيقي‬ ‫زمن‬ ‫تشغيل‬ ‫نظام‬ ‫حول‬ ‫فة‬‫ر‬‫المع‬ ‫كسب‬ ‫هو‬ ‫الوثيقة‬ ‫هذه‬ ‫كتابة‬ ‫من‬QNX‫وذلك‬ ‫لبحثنا‬ ‫هذا‬ ‫التشغيل‬ ‫نظام‬ ‫باختيار‬ ‫قمنا‬ ‫.وقد‬
‫وداع‬ ً‫ا‬‫جد‬ ‫مفيدة‬ ‫خاصة‬ ‫ات‬‫ز‬‫مي‬ ‫من‬ ‫يحويه‬ ‫لما‬.‫ين‬‫ر‬‫للمطو‬ ‫مة‬
ً‫ا‬‫جد‬ ‫صغير‬ ‫تشغيل‬ ‫كنظام‬ ‫تنفيذه‬ ‫إمكانية‬ ‫هو‬ ‫اته‬‫ز‬‫مي‬ ‫أهم‬ ‫من‬ ‫احدة‬‫و‬‫آت‬‫ز‬‫المتج‬ ‫بتنصيب‬ ‫(يسمح‬‫الوحدات‬ ‫أو‬‫فقط‬ ‫نحتاجها‬ ‫التي‬
‫اسع‬‫و‬ ‫نظام‬ ‫شبكة‬ ‫إلى‬ ‫إضافة‬ ،)‫معين‬ ‫لتطبيق‬‫ة‬.‫المستخدمين‬ ‫من‬ ‫العديد‬ ‫تخدم‬
‫الن‬ ‫حاالت‬ ،‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ،‫النظام‬ ‫بنية‬ ‫حول‬ ‫مقبولة‬ ‫فة‬‫ر‬‫مع‬ ‫اكتسبنا‬ ‫وقد‬،‫الملفات‬ ‫ة‬‫ر‬‫إدا‬ ،‫ياسب‬‫نظام‬ ‫في‬ ‫امنة‬‫ز‬‫الم‬‫و‬ ‫الجدولة‬‫و‬QNX.
‫الوثيق‬ ‫هذه‬ً‫ا‬‫جيد‬ ً‫ا‬‫فهم‬ ‫ئ‬‫القار‬ ‫تعطي‬ ‫يقة‬‫ر‬‫بط‬ ‫منظمة‬ ‫ة‬‫التشغيل‬ ‫لنظام‬QNX Neutrino.
1.‫التشغيل‬ ‫نظام‬:
.‫ة‬‫ر‬‫الذاك‬‫و‬ ،‫الطابعة‬ ،‫الصلب‬ ‫القرص‬ ‫ومنها‬ ،‫الحاسوب‬ ‫على‬ ‫المتاحة‬ ‫المصادر‬ ‫كل‬ ‫يدير‬ ‫مدير‬ ‫أساسي‬ ‫بشكل‬ ‫هو‬ ‫التشغيل‬ ‫نظام‬
‫ويتك‬‫ون‬‫نظام‬‫التشغيل‬‫من‬‫وظائف‬‫ة‬‫ر‬‫اإلدا‬‫التي‬‫تحدد‬‫ارد‬‫و‬‫الم‬‫التي‬‫سيتم‬‫استخدامها‬‫من‬‫قبل‬‫مستخدم‬‫معين‬.‫على‬‫سبيل‬،‫المثال‬‫قد‬
‫يكون‬‫هناك‬‫مستخدمين‬‫الن‬‫و‬‫يحا‬‫الوصول‬‫إلى‬‫نفس‬‫المعلومات‬‫في‬‫نفس‬،‫الوقت‬‫ف‬‫نظام‬‫التشغيل‬‫هو‬‫الذي‬‫يقرر‬‫من‬‫المستخدم‬
‫الذي‬‫يحصل‬‫على‬‫ال‬‫وصول‬ً‫ال‬‫و‬‫أ‬‫أو‬‫وصولهما‬‫عل‬‫ى‬‫حد‬‫اء‬‫و‬‫س‬‫في‬‫الوقت‬‫نفسه‬.
‫كما‬‫أنه‬‫يأخذ‬‫ار‬‫ر‬‫ق‬‫حول‬‫تخصيص‬‫ة‬‫ر‬‫الذاك‬‫ل‬‫امج‬‫ر‬‫لب‬.‫نظام‬‫التشغيل‬‫ي‬‫تتبع‬‫ما‬‫يقوم‬‫به‬‫كل‬،‫نامج‬‫ر‬‫ب‬‫مقدار‬‫ة‬‫ر‬‫الذاك‬‫ال‬‫م‬،‫ستخدم‬‫ما‬
‫اقع‬‫و‬‫م‬‫ة‬‫ر‬‫الذاك‬‫التي‬‫يتم‬‫الوصول‬‫إليها‬،‫إ‬‫لخ‬.
1.1‫عناصر‬:‫التشغيل‬ ‫نظام‬
‫الحاسوب‬ ‫عتاد‬ ‫ة‬‫ر‬‫إلدا‬ ‫برمجيات‬ ‫هو‬ ‫التشغيل‬ ‫نظام‬ ‫عام‬ ‫بشكل‬‫مث‬.‫الشاشة‬ ،‫المفاتيح‬ ‫لوحة‬ ‫ل‬
.‫منطقية‬ ‫يقة‬‫ر‬‫بط‬ ‫الملفات‬ ‫وتنظيم‬ ‫تيب‬‫ر‬‫ت‬ ‫في‬ ‫يساعد‬ ‫الذي‬ ‫النظام‬ ‫ملف‬
.‫ومعطياتهم‬ ‫امجهم‬‫ر‬‫ب‬ ‫وتنفيذ‬ ‫تشغيل‬ ‫في‬ ‫المستخدمين‬ ‫تساعد‬ ‫التي‬ ‫امر‬‫و‬‫األ‬ ‫لغة‬
.‫التشغيل‬ ‫وضع‬ ‫في‬ ،‫الحاسب‬ ‫جهاز‬ ‫على‬ ‫األوقات‬ ‫جميع‬ ‫في‬ ‫يعمل‬ ‫نامج‬‫ر‬‫كب‬ ‫التشغيل‬ ‫نظام‬ ‫اعتبار‬ ‫يمكن‬ ‫وبالتالي‬
‫هناك‬‫بين‬ ‫قوية‬ ‫عالقة‬ ‫هناك‬ ‫أن‬ ‫كما‬ ،‫التشغيل‬ ‫أنظمة‬ ‫من‬ ‫احد‬‫و‬ ‫ع‬‫نو‬ ‫سوى‬ ‫تشغل‬ ‫أن‬ ‫يمكن‬ ‫ال‬ ‫الكمبيوتر‬ ‫ة‬‫ز‬‫أجه‬ ‫من‬ ‫العديد‬
.‫العتاديات‬‫و‬ ‫التشغيل‬ ‫نظام‬
3
RealTimeSystems|6/2/2015
1.1‫التشغيل‬ ‫نظام‬ ‫من‬ ‫المقدمة‬ ‫الخدمات‬:
‫الزمن‬‫و‬ ‫تيب‬‫ر‬‫الت‬ ‫ويحدد‬ ،‫ينفذ‬ ‫أن‬ ‫يجب‬ ‫التطبيقات‬ ‫أي‬ ‫يحدد‬ ‫التشغيل‬ ‫نظام‬)‫امنة‬‫ز‬‫الم‬‫و‬ ‫(الجدولة‬.
‫مشاركة‬ ‫يدير‬.‫متعددة‬ ‫تطبيقات‬ ‫بين‬ ‫الداخلية‬ ‫ة‬‫ر‬‫الذاك‬
‫المخرجات‬‫و‬ ‫المدخالت‬ ‫ويتولى‬ ‫يعالج‬‫و‬ ‫الحاسب‬ ‫بين‬.‫إلخ‬ ،‫الطابعة‬ ،‫الصلب‬ ‫القرص‬ ‫مثل‬ ‫الطرفية‬ ‫ة‬‫ز‬‫األجه‬
.‫تظهر‬ ‫التي‬ ‫األخطاء‬ ‫أو‬ ‫الحاالت‬ ‫حول‬ ‫المستخدمين‬ ‫أو‬ ‫للتطبيقات‬ ‫الرسائل‬ ‫يرسل‬
‫ويطلق‬‫على‬‫ال‬‫امج‬‫ر‬‫ب‬‫األ‬‫ى‬‫خر‬‫غير‬‫أنظمة‬‫التشغيل‬‫ب‬‫التطبيقات‬‫الت‬‫ي‬‫ترسل‬‫طلبات‬‫إلى‬‫نظام‬‫التشغيل‬‫ل‬‫ا‬ ‫على‬ ‫لحصول‬‫لخدمات‬‫من‬
‫خالل‬‫اجهة‬‫و‬‫تطبيق‬‫نامج‬‫ر‬‫الب‬ً‫ا‬‫تحديد‬(API.)‫يمكن‬‫ل‬‫لتطبيقات‬‫اصل‬‫و‬‫الت‬‫مع‬‫نظام‬‫التشغيل‬‫يقتين‬‫ر‬‫بط‬-‫يمكن‬‫لل‬‫تطبيق‬‫استدعاء‬
‫وحدة‬‫من‬‫نظام‬،‫التشغيل‬‫التي‬‫و‬‫سوف‬،‫التطبيقات‬ ‫هذه‬ ‫من‬ ‫المطلوبة‬ ‫الوظيفة‬ ‫بتنفيذ‬ ‫تقوم‬‫أو‬‫إذا‬‫كان‬‫هن‬‫اك‬‫شيء‬‫ذو‬‫أولوية‬‫أعلى‬
‫يحتاج‬‫إلى‬‫تشغيل‬‫فال‬‫نامج‬‫ر‬‫ب‬‫مقاطعته‬ ‫التنفيذ)تتم‬ ‫قيد‬ ‫نامج‬‫ر‬‫الب‬ ‫أي‬ ‫اء‬‫ر‬‫(اإلج‬‫و‬‫يتم‬‫التعامل‬‫مع‬‫المقاطعة‬‫من‬‫قبل‬‫نظام‬‫التشغيل‬.‫بعد‬
‫انتهاء‬‫المقاطعة‬‫ي‬ ‫نامج‬‫ر‬‫الب‬‫ستأنف‬‫من‬‫النقطة‬‫التي‬‫توقف‬‫عندها‬.
1.:‫التشغيل‬ ‫نظام‬ ‫تطور‬
‫في‬1491‫كانت‬‫ة‬‫ز‬‫أجه‬‫الكمبيوتر‬‫تشغل‬‫نامج‬‫ر‬‫ب‬‫احد‬‫و‬‫فقط‬‫في‬‫كل‬‫ة‬‫ر‬‫م‬.‫كانت‬‫وتشغل‬ ‫الحاسب‬ ‫على‬ ‫تحمل‬ ‫امج‬‫ر‬‫الب‬.
‫إذا‬‫كان‬‫هناك‬،‫خطأ‬‫كان‬‫ال‬‫مبرمج‬‫يحتاج‬‫للبدء‬‫بالعمل‬‫من‬‫جديد‬.‫حتى‬‫لو‬‫لم‬‫يعمل‬‫نامج‬‫ر‬‫الب‬‫بشكل‬،‫صحيح‬‫ال‬‫مبرمج‬‫ليستطيع‬
‫ا‬‫لعمل‬‫على‬‫الجهاز‬‫مباشر‬ ‫بشكل‬.
‫في‬‫عام‬1491،‫التكنولوجيا‬‫تقدمت‬،‫العديد‬‫و‬‫من‬‫امج‬‫ر‬‫الب‬‫ال‬‫الممكن‬ ‫من‬ ‫أصبح‬ ‫مختلفة‬‫ين‬‫ز‬‫تخ‬‫ها‬‫في‬‫ة‬‫ر‬‫الذاك‬‫وتنفيذها‬‫في‬‫نفس‬
‫الوقت‬.‫هذا‬‫هو‬‫المعروف‬‫باسم‬"multiprogramming".‫تحسن‬‫األداء‬ً‫ا‬‫مسموح‬ ‫أصبح‬‫و‬‫لوحدة‬‫المعالجة‬‫ية‬‫ز‬‫المرك‬‫أن‬‫ت‬‫كون‬
‫مشغو‬‫لة‬‫ال‬‫و‬‫ط‬‫الوقت‬ً‫ا‬‫يب‬‫ر‬‫تق‬.
1.1:‫التشغيل‬ ‫نظم‬ ‫اع‬‫و‬‫أن‬
‫ويمكن‬‫تصنيف‬‫أنظمة‬‫التشغيل‬‫يقتين‬‫ر‬‫بط‬-،ً‫ال‬‫و‬‫أ‬‫حسب‬‫عدد‬‫المهام‬‫التي‬‫يمكن‬‫أن‬‫تؤديها‬‫في‬‫نفس‬،‫الوقت‬،ً‫ا‬‫وثاني‬‫عدد‬
‫المستخدمين‬‫النظام‬ ‫استخدام‬ ‫بإمكانهم‬ ‫الذين‬‫في‬‫نفس‬‫الوقت‬.‫فئات‬ ‫هناك‬‫اسعة‬‫و‬‫من‬‫أنظمة‬‫التشغيل‬‫هي‬:
‫أنظمة‬‫ت‬‫شغيل‬‫الحقيقي‬ ‫الزمن‬-‫هناك‬‫معينة‬ ‫زمنية‬ ‫ة‬‫ر‬‫فت‬ ‫التنفيذ‬‫و‬ ‫االستجابة‬ ‫إلعطاء‬ ‫اء‬‫ر‬‫اإلج‬ ‫على‬ ‫مفروضة‬ ‫زمنية‬ ‫قيود‬.
‫احدة‬‫و‬ ‫مهمة‬ ‫ويؤدي‬ ،‫وحيد‬ ‫بمستخدم‬ ‫تشغيل‬ ‫نظام‬-‫احدة‬‫و‬ ‫مهمة‬ ‫أداء‬ ‫المستخدم‬ ‫يستطيع‬ ‫بحيث‬ ‫الكمبيوتر‬ ‫ة‬‫ر‬‫إلدا‬ ‫مصمم‬
.‫احد‬‫و‬ ‫وقت‬ ‫في‬ ‫فعال‬ ‫بشكل‬
‫متعددة‬ ‫مهام‬ ‫ويؤدي‬ ،‫وحيد‬ ‫بمستخدم‬ ‫تشغيل‬ ‫نظام‬–‫أن‬ ‫التشغيل‬ ‫طور‬ ‫في‬ ‫متعددة‬ ‫امج‬‫ر‬‫ب‬ ‫لديه‬ ‫وحيد‬ ‫لمستخدم‬ ‫يسمح‬
.‫الوقت‬ ‫نفس‬ ‫في‬ ‫تنفذ‬
4
RealTimeSystems|6/2/2015
‫نظام‬‫تشغيل‬‫المستخدمين‬ ‫متعدد‬–.‫المتعددين‬ ‫المستخدمين‬ ‫متطلبات‬ ‫ازن‬‫و‬‫ت‬ ‫من‬ ‫يتأكد‬
‫نظام‬‫النياسب‬ ‫متعدد‬–.‫احد‬‫و‬ ‫بوقت‬ ‫تعمل‬ ‫أن‬ ‫نامج‬‫ر‬‫الب‬ ‫من‬ ‫المختلفة‬ ‫اء‬‫ز‬‫لألج‬ ‫يسمح‬
3.:‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬
‫نظم‬‫تشغيل‬‫ا‬‫ل‬‫زمن‬‫الحقيقي‬‫ه‬‫ي‬‫نظ‬‫م‬‫الحقيق‬ ‫الزمن‬ ‫تطبيقات‬ ‫أجل‬ ‫من‬ ‫ها‬‫تطوير‬ ‫يتم‬‫ي‬.‫يجب‬ ‫التي‬ ‫العملية‬‫ضمن‬ ‫تنفذ‬ ‫أو‬ ‫تحدث‬ ‫أن‬
‫حقيقي‬ ‫زمن‬ ‫عملية‬ ‫تسمى‬ ‫النظام‬ ‫فشل‬ ‫إلى‬ ‫امها‬‫ر‬‫احت‬ ‫عدم‬ ‫يؤدي‬ ‫قد‬ ‫التي‬‫و‬ ‫اضحة‬‫و‬ ‫زمنية‬ ‫قيود‬.‫المثال‬‫و‬‫النموذجي‬‫لعملية‬‫في‬‫الوقت‬
‫الحقيقي‬‫هو‬‫كسر‬‫ة‬‫ر‬‫سيا‬.‫ومن‬‫شأن‬‫عملية‬‫في‬‫الوقت‬‫الحقيقي‬‫أن‬‫يكون‬‫السائق‬‫أ‬‫وقف‬‫ة‬‫ر‬‫السيا‬‫قبل‬‫أن‬‫تصل‬‫إلى‬‫الجدار‬.‫العديد‬
‫من‬‫ة‬‫ز‬‫األجه‬‫تتطلب‬‫وحدة‬‫تحكم‬‫حقيقي‬ ‫زمن‬‫لتجنب‬‫ها‬‫تدمير‬-‫نفسها‬،‫مما‬‫يؤ‬ ‫قد‬‫د‬‫ي‬‫إلى‬‫إصابة‬‫شخص‬‫أو‬‫إتالف‬‫األشياء‬‫ى‬‫األخر‬.
‫نستطيع‬‫أن‬‫نقول‬‫كل‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬ ‫في‬ ‫أنه‬ ‫كخالصة‬‫من‬‫التشغيل‬ ‫وزمن‬ )‫(االستجابة‬ ‫الفعل‬ ‫رد‬ ‫زمن‬‫أقصر‬‫من‬‫الحد‬
‫األقصى‬‫ح‬‫المسمو‬‫به‬" ‫زمني‬ ‫كتأخير‬delay time".‫أنو‬‫اع‬:‫هي‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬
‫خوة‬‫الر‬ ‫النظم‬soft rtos":"‫أهمية‬ ‫من‬ ‫ينقص‬ ‫الزمنية‬ ‫لحدوده‬ ‫ه‬‫ز‬‫تجاو‬ ‫كان‬ ‫إذا‬ ً‫ا‬‫و‬‫خ‬‫ر‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظام‬ ‫يكون‬
.‫معدومة‬ ‫تصبح‬ ‫ال‬ ‫قيمتها‬ ‫ولكن‬ ،‫بها‬ ‫يقوم‬ ‫التي‬ ‫األعمال‬
" ‫الصعبة‬ ‫النظم‬hard rtos:"‫الز‬ ‫لحدودها‬ ‫ها‬‫تجاوز‬ ‫يؤدي‬ ‫قد‬ ‫التي‬ ‫النظم‬ ‫وهي‬‫وفشل‬ ‫وتعطل‬ ‫ثية‬‫ر‬‫كا‬ ‫نتائج‬ ‫إلى‬ ‫منية‬
.‫فقط‬ ‫احدة‬‫و‬ ‫ة‬‫ر‬‫لم‬ ‫حصلت‬ ‫ولو‬ ‫بالكامل‬ ‫النظام‬
" ‫القاسية‬ ‫النظم‬firm rtos:"‫لعدد‬ ‫ذلك‬ ‫حصل‬ ‫إذا‬ ‫ثية‬‫ر‬‫كا‬ ‫نتائج‬ ‫إلى‬ ‫الزمنية‬ ‫لحدودها‬ ‫تعديها‬ ‫يؤدي‬ ‫ال‬ ‫التي‬ ‫النظم‬ ‫وهي‬
‫بال‬ ‫النظام‬ ‫وفشل‬ ‫ثية‬‫ر‬‫كا‬ ‫نتائج‬ ‫إلى‬ ‫سيؤدي‬ ‫أكثر‬ ‫ذلك‬ ‫تكرر‬ ‫لو‬ ‫ولكن‬ ،‫ات‬‫ر‬‫الم‬ ‫من‬ ‫قليل‬.‫كامل‬
‫المتطلبات‬‫ئيسية‬‫ر‬‫ال‬‫ألنظمة‬‫التشغيل‬‫في‬‫الوقت‬‫الحقيقي‬‫هي‬‫الحتمية‬(‫الحاجة‬‫إلى‬‫تحقيق‬‫النتيجة‬‫الصحيحة‬‫في‬‫كل‬‫حالة‬)،
‫االستجابة‬‫و‬(‫الطلبات‬ ‫تخديم‬ ‫زمن‬)،‫التحكم‬‫و‬(‫امل‬‫و‬‫الع‬‫ة‬‫ر‬‫المؤث‬‫على‬‫التحكم‬‫ه‬‫و‬‫عدد‬‫اءات‬‫ر‬‫اإلج‬‫في‬‫ة‬‫ر‬‫الذاك‬،‫ئيسية‬‫ر‬‫ال‬‫معامالت‬
‫و‬ ‫االستدعاء‬،‫الترحيل‬‫وتخصيص‬‫األولوية‬)،‫الموثوقية‬(‫إعادة‬‫التشغيل‬‫هو‬‫ار‬‫ر‬‫ق‬‫سيء‬.)
9.‫نظام‬ ‫عن‬ ‫لمحة‬QNX Neutrino:
‫نظام‬ ‫يصنف‬QNX Neutrino‫زمن‬ ‫تشغيل‬ ‫كنظام‬‫ح‬.‫صعب‬ ‫قيقي‬‫لمعالجة‬ ‫التشغيل‬ ‫نظام‬ ‫على‬ ‫الحقيقي‬ ‫الزمن‬ ‫تطبيقات‬ ‫تعتمد‬
.‫زمنية‬ ‫قيود‬ ‫ضمن‬ ‫المتعددة‬ ‫األحداث‬
‫وهو‬‫نظام‬‫تش‬‫ضمن‬ ‫مضاعفة‬ ‫أحداث‬ ‫لمعالجة‬ ‫غيل‬‫قي‬‫زمنية‬ ‫ود‬‫تشغيل‬ ‫نظام‬ .QNX‫المهام‬ ‫تعدد‬ ‫مثل‬ ‫تطبيقات‬ ‫يقدم‬،‫مقاد‬
،‫باألولوية‬‫الجدولة‬،‫الشفعية‬‫تبديل‬‫بشكل‬ ‫السياق‬.‫يع‬‫ر‬‫س‬
5
RealTimeSystems|6/2/2015
‫يعتبر‬QNX‫مرن‬ ‫تشغيل‬ ‫نظام‬‫حيث‬‫ل‬ ‫التشغيل‬ ‫نظام‬ ‫تخصيص‬ ‫ين‬‫ر‬‫للمطو‬ ‫يمكن‬‫احتياجات‬ ‫تلبية‬‫ين‬‫ر‬‫للمطو‬ ‫يسمح‬ .‫التطبيقات‬
‫النظام‬ ‫بضبط‬‫التي‬ ‫المصادر‬ ‫تلك‬ ‫فقط‬ ‫ليستخدم‬‫يتطلبها‬‫إلنجاز‬‫العمل‬،‫مبدأين‬ ‫خالل‬ ‫من‬ ‫الكفاءة‬ ‫من‬ ‫عالية‬ ‫جة‬‫در‬ ‫ويحقق‬
‫أساسيين‬:
‫بنية‬‫النو‬‫ي‬‫ة‬)‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫الن‬ ‫ية‬‫ر‬‫(معما‬Microkernel architecture.
.)‫داخلية(تنسيق‬ ‫اصل‬‫و‬‫ت‬ ‫عمليات‬ ‫على‬ ‫ة‬‫ز‬‫تك‬‫ر‬‫م‬ ‫رسائل‬
9.1‫بنية‬)‫ية‬‫ر‬‫(معما‬‫النو‬‫ي‬‫ة‬:
‫يتكون‬QNX‫عملي‬ ‫من‬ ‫مجموعة‬ ‫عن‬ ‫مسؤولة‬ ‫ة‬‫ر‬‫صغي‬ ‫اة‬‫و‬‫ن‬ ‫من‬‫ابطة‬‫ر‬‫مت‬ ‫ات‬،‫اة‬‫و‬‫الن‬ ‫تعتبر‬ ‫ة‬‫ز‬‫األجه‬ ‫بعض‬ ‫في‬ .‫يق‬‫ر‬‫الف‬ ‫مثل‬ ‫اة‬‫و‬‫الن‬ ‫بنية‬
‫ولكن‬ ‫ى‬‫األخر‬ ‫الوظائف‬ ‫من‬ ‫العديد‬ ‫أيضا‬ ‫ولها‬ ‫بالكامل‬ ‫التشغيل‬ ‫نظام‬‫ألداء‬ ‫مكرسة‬ ‫تكون‬ ‫النوية‬‫األساسية‬ ‫المهام‬ ‫من‬ ‫اثنين‬:
:‫الرسائل‬ ‫ير‬‫ر‬‫تم‬‫ت‬ ‫النوية‬‫في‬ ‫ساعد‬‫جميع‬ ‫مع‬ ‫التعامل‬‫بين‬ ‫الرسائل‬‫اءات‬‫ر‬‫اإلج‬‫ضمن‬‫الت‬ ‫نظام‬‫شغيل‬.‫كله‬
:‫الجدولة‬،‫مقاطعة‬ ‫أو‬ ‫لرسالة‬ ‫كنتيجة‬ ‫يكون‬ ‫أن‬ ‫ممكن‬ ‫اء‬‫ر‬‫لإلج‬ ‫الحالة‬ ‫تغيير‬ ،‫حالته‬ ‫اء‬‫ر‬‫إج‬ ‫غير‬ ‫كلما‬ ‫يستدعى‬ ‫المجدول‬
‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫الن‬ ‫من‬ ‫ء‬‫جز‬ ‫هو‬ ‫المجدول‬.
‫خدمات‬ ‫جميع‬ ‫مع‬ ‫التعامل‬ ‫يتم‬QNX‫النو‬ ‫تقدمها‬ ‫التي‬ ‫تلك‬ ‫باستثناء‬‫ية‬‫عمليات‬ ‫عبر‬QNX‫القياسي‬.‫ة‬
‫نظام‬ ‫تركيب‬QNX‫يتأ‬:‫التالية‬ ‫النظام‬ ‫عمليات‬ ‫من‬ ‫لف‬
Fig.1 the QNX Microkernel coordinating the system managers
6
RealTimeSystems|6/2/2015
‫مدير‬‫اإل‬‫اءات‬‫ر‬‫ج‬‫عن‬ ‫المسؤول‬ ‫هو‬‫ة‬‫ر‬‫إدا‬‫اء‬‫ر‬‫اإلج‬‫ة‬‫ر‬‫إلدا‬ ‫باإلضافة‬‫ة‬‫ر‬‫الذاك‬،‫ف‬‫ال‬ ‫اء‬‫ر‬‫مد‬‫نظام‬‫يقدم‬‫ون‬‫ال‬‫خدمات‬‫التي‬‫ال‬‫تقدم‬‫ها‬
‫النوية‬.
9.1‫عمليات‬‫اصل‬‫و‬‫الت‬‫الداخلية‬)‫اءات‬‫ر‬‫اإلج‬ ‫(بين‬"IPC":
‫الحقيقي‬ ‫الزمن‬ ‫بيئة‬ ‫في‬‫المهام‬ ‫متعدد‬‫التشغيل‬ ‫نظام‬‫بعضها‬ ‫مع‬ ‫اصل‬‫و‬‫تت‬ ‫أن‬ ‫العمليات‬ ‫لكل‬ ‫تسمح‬ ‫تقنيات‬ ‫يقدم‬ ‫أن‬ ‫يجب‬
‫البعض‬‫اإل‬ ‫بين‬ ‫االتصال‬ .‫جر‬‫اءات‬‫عمل‬ ‫فكل‬ ‫المتعاونة‬ ‫العمليات‬ ‫من‬ ‫كمجموعة‬ ‫التطبيق‬ ‫تصميم‬ ‫في‬ ‫يساعد‬‫ء‬‫جز‬ ‫تعالج‬ ‫ية‬
‫التطبيق‬ ‫كل‬ ‫من‬ ‫احد‬‫و‬.
‫نظام‬ ‫يوفر‬QNX‫ا‬‫ر‬‫اإلج‬ ‫بين‬ ‫االتصال‬ ‫ات‬‫ر‬‫قد‬ ‫من‬ ‫قوية‬ ‫مجموعة‬‫ءات‬.‫التطبيق‬ ‫لتصميم‬
‫نظام‬ ‫يعتبر‬QNX‫ك‬ ‫يستعمل‬ ‫ي‬‫تجار‬ ‫حقيقي‬ ‫زمن‬ ‫تشغيل‬ ‫نظام‬‫اإل‬ ‫بين‬ ‫لالتصال‬ ‫أساسية‬ ‫أداة‬‫جر‬‫اءا‬‫ت‬،‫فت‬‫كرزمة‬ ‫الرسالة‬ ‫عتبر‬
‫ال‬ ‫الرسالة‬ ‫في‬ ‫المعلومات‬ . ‫ى‬‫أخر‬ ‫إلى‬ ‫عملية‬ ‫من‬ ‫تمرر‬ ‫البايتات‬ ‫من‬‫بل‬ ‫لبعضها‬ ‫المعلومات‬ ‫ير‬‫ر‬‫بتم‬ ‫للعمليات‬ ‫فقط‬ ‫تسمح‬
‫العمليات‬ ‫هذه‬ ‫تنفيذ‬ ‫امنة‬‫ز‬‫م‬ ‫في‬ ً‫ا‬‫أيض‬ ‫تساعد‬‫ب‬‫الرسالة‬ ‫أرسلت‬ ‫ينما‬،‫استقبلت‬،‫ورد‬،‫عليها‬‫اإل‬‫الحالة‬ ‫لتغيير‬ ‫تخضع‬ ‫اءات‬‫ر‬‫ج‬.
‫و‬ ‫األولويات‬ ‫فة‬‫ر‬‫بمع‬‫اءات‬‫ر‬‫اإلج‬ ‫بجدولة‬ ‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫الن‬ ‫تقوم‬ ،‫الحاالت‬.
‫ونظام‬QNX" ‫الحقيقي‬ ‫الزمن‬ ‫مع‬ ‫افق‬‫و‬‫مت‬ ‫محمول‬ ‫تشغيل‬ ‫نظام‬ ‫اجهة‬‫و‬ ‫هو‬POSIX‫نظام‬ ‫يتصرف‬ ‫كيف‬ ‫يحدد‬ ‫الذي‬ ،"
‫نظام‬ ‫من‬ ‫تطبيقاتهم‬ ‫ا‬‫و‬‫لينقل‬ ‫للمبرمجيبن‬ ‫أسهل‬ ‫إياه‬ ً‫ال‬‫جاع‬ ،‫النياسب‬‫و‬ ‫ات‬‫ر‬‫اإلشا‬ ‫المتضمنة‬ ‫األساسية‬ ‫العمليات‬ ‫ويحدد‬ ،‫التشغيل‬
‫التشغيل‬ ‫نظام‬ ،‫آلخر‬ ‫تشغيل‬QNX:‫ية‬‫ر‬‫كمعما‬ ‫لآللة‬ ‫يات‬‫ر‬‫معما‬ ‫على‬ ‫يعمل‬
like x86, ARM, XScale, PowerPC, MIPS, and SH-4.
5.‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬:
‫من‬ ‫جدا‬ ‫القليل‬ ‫هناك‬ ‫النوية‬ ‫بنية‬ ‫تحت‬‫الرماز‬‫يعمل‬‫في‬‫وضع‬‫اة‬‫و‬‫الن‬‫الذي‬‫أن‬ ‫يمكن‬‫ي‬‫سبب‬‫فشلها‬‫أن‬ ‫يمكن‬ ‫الفردية‬ ‫العمليات‬ .
‫ب‬ ‫وتتوقف‬ ‫تبدأ‬‫يوفر‬ ‫وهذا‬ ‫النظام‬ ‫توقف‬ ‫أن‬ ‫حاجة‬ ‫دون‬ ‫ديناميكي‬ ‫شكل‬‫ار‬‫ر‬‫االستق‬‫ة‬‫ر‬‫إدا‬ ‫في‬ ‫ويفيد‬ ‫العالي‬‫بكفاءة‬ ‫ارد‬‫و‬‫الم‬.
.‫المتانة‬ ‫تحسين‬ ‫هي‬ ‫ة‬‫ر‬‫للذاك‬ ‫حماية‬ ‫بإضافة‬ ‫المكتسبة‬ ‫األساسية‬ ‫ة‬‫ز‬‫المي‬
5.1‫وحد‬‫ات‬‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬"MMUs":
‫حماية‬ ‫مع‬،‫ة‬‫ر‬‫الذاك‬‫كانت‬ ‫إذا‬‫من‬ ‫احدة‬‫و‬‫في‬ ‫المنفذة‬ ‫اءات‬‫ر‬‫اإلج‬‫بيئة‬‫ت‬‫المهام‬ ‫عدد‬‫ت‬‫الوصو‬ ‫حاول‬‫ل‬‫التي‬ ‫ة‬‫ر‬‫للذاك‬‫لم‬‫تخصص‬
‫لها‬‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ‫وحدة‬ ‫،فتقوم‬‫العتادية‬‫بإعالم‬‫التشغيل‬ ‫نظام‬‫الذي‬‫النيسب‬ ‫يوقف‬.‫ان‬‫و‬‫عن‬ ‫يحمي‬ ‫هذا‬‫العملية‬‫ين‬‫ر‬‫اآلخ‬ ‫عن‬
7
RealTimeSystems|6/2/2015
.‫ويمنع‬‫الترميز‬ ‫أخطاء‬‫النيسب‬ ‫في‬‫في‬‫احدة‬‫و‬ ‫عملية‬‫من‬‫ة‬‫ر‬‫الذاك‬ ‫تدمير‬‫تستخدم‬ ‫التي‬‫في‬‫عمليات‬‫نياسب‬‫ى‬‫أخر‬،‫يمكن‬‫لنظام‬
‫التشغيل‬‫إحباط‬‫اء‬‫ر‬‫إج‬‫لحظة‬‫خرق‬ ‫حدوث‬‫الوصول‬ ‫ة‬‫ر‬‫ذاك‬)‫(تجميد‬.
‫صفحات‬ ‫من‬ ‫عدد‬ ‫إلى‬ ‫يائية‬‫ز‬‫الفي‬ ‫ة‬‫ر‬‫الذاك‬ ‫تقسم‬ ‫النموذجية‬ ‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ‫وحدة‬4K‫من‬ ‫مجموعة‬ ‫يستخدم‬ ‫المعالج‬ ،‫جداول‬
‫العنا‬ ‫من‬ ‫ائط‬‫ر‬‫خ‬ ‫تحدد‬ ‫الصفحة‬ ‫جداول‬ .‫النظام‬ ‫ة‬‫ر‬‫ذاك‬ ‫في‬ ‫نة‬‫ز‬‫المخ‬ ‫الصفحات‬‫و‬‫ين‬ ‫بينما‬ ،‫اضية‬‫ر‬‫االفت‬ ‫ين‬‫ف‬‫النيسب‬ ‫ذ‬،‫جداول‬
‫النيسب‬ ‫يستخدمه‬ ‫الذي‬ ‫ة‬‫ر‬‫الذاك‬ ‫ان‬‫و‬‫بعن‬ ‫تتحكم‬ ‫الصفحات‬.
‫ة‬‫ر‬‫الكبي‬ ‫المساحات‬ ‫ذات‬ ‫للعناوين‬‫مع‬‫الصفحة‬ ‫جدول‬ ‫رقم‬ ‫مدخالت‬ ،‫النياسب‬‫و‬ ‫اءات‬‫ر‬‫اإلج‬ ‫من‬ ‫العديد‬‫تصف‬ ‫التي‬‫هي‬ ‫ائط‬‫ر‬‫الخ‬
‫لتحسين‬ .ً‫ا‬‫جد‬ ‫هامة‬،‫األداء‬‫الخابية‬ ‫ة‬‫ر‬‫الذاك‬،‫من‬ ‫اء‬‫ز‬‫أج‬ ‫تستخدم‬‫الصف‬ ‫جداول‬‫حة‬‫جية‬‫الخار‬‫ض‬‫من‬(translation look-
aside buffer).‫المصادر‬ ‫استخدام‬ ‫لتقليل‬
9.‫الملفات‬ ‫ة‬‫ر‬‫إدا‬:
‫يوفر‬QNX‫من‬ ‫غنية‬ ‫متنوعة‬ ‫مجموعة‬‫الملفات‬ ‫نظم‬‫ت‬ ‫التي‬‫نفذ‬‫ج‬‫خار‬‫اة‬‫و‬‫الن‬.‫معظم‬‫أنظمة‬‫الملفات‬‫هي‬‫مد‬‫اء‬‫ر‬‫ل‬.‫لمصادر‬‫كل‬
‫من‬‫الملفات‬ ‫نظم‬‫أولوية‬ ‫يأخذ‬‫اسم‬ ‫فضاء‬‫تدعى‬ ‫التي‬‫و‬ ‫المسار‬"mountpoint"‫يو‬ .‫(فتح‬ ‫القياسية‬ ‫الخدمات‬ ‫الملفات‬ ‫نظام‬ ‫فر‬
–‫إغالق‬–‫اءة‬‫ر‬‫ق‬–) ... ‫كتابة‬‫خالل‬ ‫من‬"POSIX".
‫يمكن‬ ‫النظام‬ ‫ملفات‬‫ديناميكي‬ ‫بشكل‬ ‫تتوقف‬ ‫أن‬‫و‬ ‫تعمل‬ ‫أن‬.
‫ممكن‬‫تشغيل‬‫من‬ ‫العديد‬‫نظ‬‫احد‬‫و‬ ‫وقت‬ ‫في‬ ‫الملفات‬ ‫م‬.
‫وي‬ ‫احد‬‫و‬ ‫جهاز‬ ‫على‬ ‫الملفات‬ ‫تعمل‬‫آخر‬ ‫جهاز‬ ‫أي‬ ‫من‬ ‫إليها‬ ‫الوصول‬ ‫مكن‬.
‫للمستخد‬ ‫يمكن‬‫م‬‫موقع‬ ‫تحديد‬‫االتصال‬‫و‬‫الملفات‬ ‫نظام‬ ‫مع‬‫مدي‬ ‫مع‬ ‫المسجل‬‫وتصنف‬ ‫العملية‬‫ر‬‫الملفات‬ ‫أنظمة‬‫إلى‬‫الفئات‬
‫التالية‬:
‫ة‬‫ر‬‫الصو‬‫الذي‬ ‫الملفات‬ ‫نظام‬ :‫يمثل‬‫الوحدات‬‫ة‬‫ر‬‫الصو‬ ‫في‬‫دائم‬ ‫بشكل‬ ‫ويوجد‬.
:‫الكتلة‬‫التقليدية‬ ‫الملفات‬ ‫نظام‬‫تعمل‬ ‫التي‬‫ة‬‫ز‬‫أجه‬ ‫على‬‫كتلة‬‫مثال‬‫ا‬‫ر‬‫األق‬ ‫ومحركات‬ ‫الصلبة‬ ‫اص‬‫ر‬‫ألق‬.‫ص‬
.‫الفالش‬ ‫ة‬‫ر‬‫ذاك‬ ‫ة‬‫ز‬‫ألجه‬ ً‫ا‬‫خصيص‬ ‫صمم‬ ‫بالكتلة‬ ‫موجه‬ ‫غير‬ ‫نظام‬ :‫الفالش‬
:‫الشبكة‬‫توفر‬ ‫التي‬ ‫الملفات‬ ‫أنظمة‬‫الوصول‬ ‫للشبكة‬‫بعيد‬ ‫كومبيوتر‬ ‫على‬ ‫النظام‬ ‫لملفات‬.
QNX‫اضية‬‫ر‬‫االفت‬ ‫الملفات‬ ‫أنظمة‬ ‫يقدم‬ ‫اضي‬‫ر‬‫االفت‬.‫مختلفة‬
8
RealTimeSystems|6/2/2015
7.‫الجدولة‬Scheduling:
‫نظام‬ ‫يعتمد‬QNX Neutrino‫على‬ ‫الجدولة‬ ‫في‬‫النياسب‬threads""‫يتم‬ ‫األعلى‬ ‫األولوية‬ ‫ذو‬ ‫فالنيسب‬ .‫اءات‬‫ر‬‫اإلج‬ ‫من‬ ً‫ال‬‫بد‬
.‫له‬ ‫ينتمي‬ ‫الذي‬ ‫اء‬‫ر‬‫اإلج‬ ‫عن‬ ‫النظر‬ ‫بغض‬ ،‫للتنفيذ‬ ‫ه‬‫ر‬‫أختيا‬
7.1:‫ألولوية‬ ‫نطاق‬
QNX Neutrino‫لديه‬‫نطاق‬‫أولوية‬‫من‬1‫إلى‬93.‫أرقام‬‫أعلى‬‫تمثل‬‫أولوية‬‫أعلى‬.‫فإننا‬‫يمكن‬‫نضبط‬‫ونستعيد‬‫األ‬‫ولوية‬‫لنيسب‬
‫باستخ‬‫دام‬‫ابع‬‫و‬‫الت‬)(setprio‫و‬)(getprio.‫سيؤدي‬‫ذلك‬‫إلى‬‫تغيير‬‫األولوية‬‫للنيسب‬‫فقط‬‫وليس‬‫يحتويه‬ ‫الذي‬ ‫اء‬‫ر‬‫لإلج‬.‫هناك‬
‫اء‬‫ر‬‫اإلج‬ ‫ضمن‬ ‫أولويته‬ ‫ضبط‬ ‫يتم‬ ‫الذي‬ ‫للنيسب‬ ‫استدعاء‬ ‫عمليه‬.‫هناك‬‫خمول‬ ‫نيسب‬"idle"‫خاص‬‫له‬‫األ‬‫ولوية‬1‫و‬‫هو‬‫دائما‬‫على‬
‫استعداد‬‫للتنفيذ‬.‫كل‬‫مستوى‬‫أولوية‬‫لديه‬‫تل‬‫ر‬‫االنتظار‬‫به‬ ‫الخاص‬‫من‬‫النياسب‬‫لتنفيذها‬.
7.2(‫سياسات‬‫ارزميات‬‫و‬‫خ‬:‫)الجدولة‬
" ً‫ال‬‫و‬‫أ‬ ‫ج‬‫يخر‬ ً‫ال‬‫و‬‫أ‬ ‫يدخل‬ ‫من‬FIFO Scheduling"–‫المعالج‬ ‫تنفيذه(يترك‬ ‫ينتهي‬ ‫حتى‬ ‫التنفيذ‬ ‫حال‬ ‫في‬ ‫يبقى‬ ‫النيسب‬
.‫أعلى‬ ‫أولوية‬ ‫ذو‬ ‫آخر‬ ‫اء‬‫ر‬‫إج‬ ‫من‬ )‫(مقاطعته‬ ‫شفعه‬ ‫يتم‬ ‫أو‬ ،)ً‫ا‬‫طوع‬
" ‫ار‬‫و‬‫الد‬ ‫يط‬‫ر‬‫الش‬Round Robin Scheduling"-‫المعالج‬ ‫تنفيذه(يترك‬ ‫ينتهي‬ ‫حتى‬ ‫التنفيذ‬ ‫حال‬ ‫في‬ ‫يبقى‬ ‫النيسب‬
‫الزمنية‬ ‫حصته‬ ‫تنتهي‬ ‫أو‬ ،‫أعلى‬ ‫أولوية‬ ‫ذو‬ ‫آخر‬ ‫اء‬‫ر‬‫إج‬ ‫من‬ )‫(مقاطعته‬ ‫شفعه‬ ‫يتم‬ ‫أو‬ ،)ً‫ا‬‫طوع‬"Slice".
" )‫متباعدة(متقطعة‬ ‫جدولة‬Sporadic Scheduling"–‫حص‬ ‫استهلك‬ ‫النيسب‬ ‫إذا‬ ،‫للنيسب‬ ‫الزمنية‬ ‫الحصة‬ ‫يحدد‬‫ته‬
‫بقيمة‬ ‫تقل‬ ‫أولويته‬ ‫الزمنية‬1‫عند‬ ‫األولوية‬ ‫بمستوى‬ ‫يحتفظ‬ ‫النيسب‬ .‫األصلية‬ ‫أولويته‬ ‫إلى‬ ‫يعود‬ ‫النيسب‬ ‫مد‬‫ج‬ ‫ذا‬‫ا‬‫و‬ ،
.‫االستكمال‬ ‫وقت‬ ‫إلى‬ ‫وصوله‬
8.:‫النيسب‬ ‫حاالت‬
‫التالي‬ ‫الحاالت‬ ‫لديه‬ ‫السادس‬ ‫الجيل‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظام‬ ،‫المتضمنة‬ ‫النياسب‬‫و‬ ‫امنات‬‫ز‬‫الم‬ ‫من‬ ‫ايد‬‫ز‬‫المت‬ ‫العدد‬ ‫بسبب‬:‫ة‬
Fig.2 thread states
9
RealTimeSystems|6/2/2015
‫التنفيذ‬"Running":" ‫ية‬‫ز‬‫المرك‬ ‫المعالجة‬ ‫وحدة‬ ‫يستخدم‬ ‫النيسب‬CPU‫في‬ ‫متعددة‬ ‫نياسب‬ ‫هناك‬ ‫يكون‬ ‫أن‬ ‫ويمكن‬ ،"
.‫الحالة‬ ‫هذه‬
" ‫ية‬‫ز‬‫الجهو‬Ready:"‫الوقت‬ ‫في‬ ‫المعالج‬ ‫على‬ ‫تستحوذ‬ ‫ال‬ ‫لكنها‬ ‫ية‬‫ز‬‫المرك‬ ‫المعالجة‬ ‫وحدة‬ ‫على‬ ‫للتنفيذ‬ ‫ة‬‫ز‬‫جاه‬
.‫الحالي‬
‫مجمد‬-" ‫إرسال‬Receive-Blocked:".‫مرسلة‬ ‫رسالة‬ ‫على‬ ‫النيسب‬ ‫تجميد‬ ‫تم‬
‫مجمد‬-" ‫استقبال‬Send-Blocked:".‫مستقبلة‬ ‫رسالة‬ ‫على‬ ‫النيسب‬ ‫تجميد‬ ‫تم‬
" ‫متوقف‬Stopped."
SEM-Blocked:‫السيمافور‬ ‫بانتظار‬ ‫النيسب‬"Semaphore."
" ‫الموت‬ ‫حالة‬Dead State:".‫ثانية‬ ‫ية‬‫ز‬‫الجهو‬ ‫وضع‬ ‫إلى‬ ‫العودة‬ ‫يستطيع‬ ‫ال‬ ‫النيسب‬
SIGsuspended-Blocked":"‫عملية‬ ‫يستدعي‬ ‫النيسب‬)(sigsuspend.‫ة‬‫ر‬‫اإلشا‬ ‫سينتظر‬ ‫ثم‬ ،
10
RealTimeSystems|6/2/2015
SIGWaitInfo-state":"‫عملية‬ ‫يستدعي‬ ‫النيسب‬)(sigwaitinfo‫ة‬‫ر‬‫اإلشا‬ ‫ينتظر‬ ‫ثم‬ ،ً‫ا‬‫أيض‬.
NANOSsleep":"‫العملية‬ ‫باستدعاء‬ ‫الزمن‬ ‫من‬ ‫ة‬‫ر‬‫قصي‬ ‫ة‬‫ر‬‫لفت‬ ‫النيسب‬ ‫تعليق‬ ‫يتم‬)(nanosleep،‫انتهاء‬ ‫حتى‬
.‫الوقت‬
Mutex state or the CONDVA":".‫بالمتابعة‬ ‫الظروف‬ ‫له‬ ‫تسمح‬ ‫حتى‬ ‫الحالة‬ ‫هذه‬ ‫في‬ ‫النيسب‬ ‫سيبقى‬
‫التسجيل‬JOIN":"‫ال‬ ‫استدعاء‬ ‫النيسب‬ ‫يستطيع‬‫عملية‬)(pthread_join.‫االبن‬ ‫النيسب‬ ‫انتهاء‬ ‫لحين‬ ،
INTR":"‫كا‬ ‫إذا‬‫حالة‬ ‫في‬ ‫يبقى‬ ‫أن‬ ‫يستطيع‬ ،‫مقاطعة‬ ‫ينتظر‬ ‫النيسب‬ ‫ن‬INTR.‫المقاطعة‬ ‫تأتي‬ ‫حتى‬
‫يستخدم‬Neutrino‫نموذج‬‫نيسب‬POSIX،‫ال‬‫ذي‬‫ي‬‫عرف‬‫اإل‬‫اء‬‫ر‬‫ج‬‫بأنها‬‫تنفذ‬ ‫التي‬ ‫النياسب‬ ‫من‬ )‫األقل‬ ‫على‬ ‫احد‬‫و‬(‫مجموعة‬.
‫يمكن‬‫اعتبار‬‫النيسب‬‫ا‬‫األصغر‬ ‫لوحدة‬‫عمليتي‬ ‫في‬‫الجدولة‬‫التنفيذ‬‫و‬‫في‬‫النوية‬)‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫(الن‬.ً‫ا‬‫اعتماد‬‫على‬‫طبيعة‬،‫التطبيق‬
‫النياسب‬‫يمكن‬‫تنفذ‬ ‫أن‬‫بشكل‬‫مستقل‬‫دون‬‫الحاجة‬‫لالتصال‬‫بين‬‫ال‬‫ارزميات‬‫و‬‫خ‬‫أو‬‫أنها‬‫قد‬‫تحتاج‬‫إلى‬‫امن‬‫ز‬‫ت‬‫مشدد‬.‫وللمساعدة‬‫في‬
‫هذا‬‫االتصال‬،‫امن‬‫ز‬‫الت‬‫و‬‫يوفر‬Neutrino‫من‬ ‫العديد‬IPC"".‫امن‬‫ز‬‫الت‬ ‫وخدمات‬
4.:‫امنة‬‫ز‬‫للم‬ ‫المقدمة‬ ‫التسهيالت‬
‫يوفر‬NeutrinoQNX‫تسهيالت‬‫امن‬‫ز‬‫الت‬‫على‬‫مستوى‬‫النيسب‬،‫بعضها‬‫مفيدة‬‫بين‬‫المتضمنة‬ ‫النياسب‬‫في‬‫اءات‬‫ر‬‫إج‬‫مختلفة‬.
‫وتشمل‬‫خدمات‬‫ال‬‫امنة‬‫ز‬‫م‬:
.Mutexes, Condvars, Barriers, Sleepon locks, semaphores, etc
‫ويتم‬‫استخدام‬Mutex(‫قفل‬‫اإلقصاء‬‫المتبادل‬)‫لضمان‬‫وصول‬‫مخصص‬‫إلى‬‫البيانات‬‫المشتركة‬‫بين‬‫النياسب‬.‫وعادة‬‫ما‬‫يتم‬
‫المشتركة‬ ‫البيانات‬ ‫مع‬ ‫يتعامل‬ ‫الذي‬ ‫الكود‬ ‫حول‬ ‫ه‬‫ر‬‫ي‬‫ر‬‫وتح‬ ‫قفله‬.‫فقط‬‫نيسب‬‫احد‬‫و‬‫يمكن‬‫أن‬‫ال‬ ‫عليه‬ ‫يقفل‬Mutex‫من‬ ‫وقت‬ ‫أي‬ ‫في‬
‫األوقات‬.‫دخول‬ ‫تحاول‬ ‫التي‬ ‫النياسب‬Mutex‫ح‬ ‫تجميدها‬ ‫سيتم‬ ‫مقفل‬‫يحوي‬ ‫الذي‬ ‫الكود‬ ‫من‬ ‫النيسب‬ ‫ج‬‫ويخر‬ ً‫ال‬‫مقف‬ ‫غير‬ ‫يصبح‬ ‫تى‬
‫المشترك‬ ‫المصدر‬.‫اءات‬‫ر‬‫اإلج‬‫تكتسب‬Mutex‫على‬-‫أساس‬‫األولوية‬.
‫أقفال‬‫ئ‬‫القار‬/‫الكاتب‬:
‫وتستخدم‬‫هذه‬‫األقفال‬‫عندما‬‫يتكون‬‫نمط‬‫الوصول‬‫ا‬ ‫من‬‫لعديد‬‫من‬‫التي‬ ‫النياسب‬‫أ‬‫ر‬‫تق‬،‫البيانات‬‫ونيسب‬‫احد‬‫و‬‫على‬‫األكثر‬‫ل‬‫كتابة‬
‫البيانات‬.‫هذ‬‫ه‬‫األقفال‬‫أكثر‬ ‫مكلفة‬‫من‬Mutexes،‫ولكن‬‫ها‬‫مفيدة‬‫لهذا‬‫ع‬‫النو‬‫من‬‫نمط‬‫الوصول‬‫إلى‬‫البيانات‬.‫عندما‬‫يسأل‬‫نيسب‬
‫لتأمين‬)‫(قفل‬‫لل‬،‫كتابة‬‫ي‬‫تم‬‫رفض‬‫الطلب‬‫حتى‬‫تحرر‬‫كل‬‫نياسب‬‫اءة‬‫ر‬‫الق‬‫الحالية‬‫أقفال‬‫اءتهم‬‫ر‬‫ق‬.‫قفل‬‫الكتابة‬‫يعمل‬‫على‬‫أساس‬
‫األولوية‬-‫ولكن‬‫االعتب‬ ‫بعين‬ ‫يأخذ‬ ‫ال‬ ‫اءة‬‫ر‬‫الق‬ ‫قفل‬‫ار‬‫األولوية‬.
11
RealTimeSystems|6/2/2015
11.:‫الخاتمة‬
QNX Neutrino‫هو‬‫نظام‬‫تشغيل‬‫مثالي‬‫لتطبيقات‬‫الزمن‬‫الحقيقي‬‫كما‬‫يمكن‬‫توسيعه‬‫من‬‫األحجام‬‫ة‬‫ر‬‫الصغي‬ً‫ا‬‫جد‬‫إلى‬‫شبكة‬
‫اسعة‬‫و‬‫تخدم‬‫مئات‬‫المستخدمين‬.‫ويقدم‬‫ات‬‫ر‬‫قد‬API-POSIX‫القياسية‬‫لذلك‬‫ليس‬‫هناك‬‫حاجة‬‫للتخلي‬‫عن‬‫المعايير‬‫من‬‫أجل‬
‫تحقيق‬‫نظام‬‫صغير‬.QNX Neutrino‫مرن‬‫بشكل‬‫ملحوظ‬.‫تم‬‫تصميم‬‫ه‬‫ألنظمة‬‫الزمن‬‫الحقيقي‬‫ذات‬‫المهام‬‫جة‬‫الحر‬.‫جميع‬
‫وحدات‬‫التشغيل‬‫امج‬‫ر‬‫وب‬‫تشغيل‬‫الجهاز‬‫تنفذ‬‫اءات‬‫ر‬‫كإج‬،‫منفصلة‬‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ‫وحدة‬ ‫من‬ ‫محمية‬MMU.‫هذه‬‫ال‬‫ية‬‫ر‬‫معما‬‫ال‬‫توفر‬
‫فقط‬‫استثنائية‬‫التسامح‬‫مع‬،‫الخطأ‬‫ولكن‬‫ت‬‫قلل‬‫بشكل‬‫كبير‬‫من‬‫الوقت‬‫الال‬‫زم‬‫ل‬‫لنموذج‬،‫األولي‬‫و‬‫اال‬،‫ختبار‬‫ودمج‬‫وتكاملية‬‫تطبيقات‬
‫جديدة‬‫في‬.‫ة‬‫ر‬‫السيا‬
:‫اجع‬‫ر‬‫الم‬
SVU-ISE-RT Course: Dr.Ahmad Wabbi
QNX software systems Ltd (2001). “QNX OS VERSION 6”.
URL:http://www.qnx.com/developer/docs/qnx_6.1_docs/neutrino/sys_arch/ph
oton.html
Fig.1 “QNX microkernel”. URL:
http://www.qnx.com/developer/docs/qnx_4.25_docs/qnx4/sysarch/intro.html
Fig.2 “Thread states” (2003). URL:
http://www.qnx.com/developer/docs/momentics621_docs/neutrino/sys_arch/k
ernel.html#THREADSANDPRO

Contenu connexe

Similaire à Ise rt c2_s14_nour_40714

خطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكترونيخطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكترونيShadi Akil
 
First lecture
First lectureFirst lecture
First lectureghayth
 
نشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرة
نشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرةنشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرة
نشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرةNoor Mohammed
 
البرمجيات
البرمجياتالبرمجيات
البرمجياتm_gemy86
 
إدارة الإصدارات (Version Control)
إدارة الإصدارات (Version Control)إدارة الإصدارات (Version Control)
إدارة الإصدارات (Version Control)Hussein Younis
 
استخدام الحاسب الألي في نظام المراجعة وليد القضاة
استخدام الحاسب الألي في نظام المراجعة   وليد القضاةاستخدام الحاسب الألي في نظام المراجعة   وليد القضاة
استخدام الحاسب الألي في نظام المراجعة وليد القضاةMohammedSaneh
 
First lecture doc
First lecture docFirst lecture doc
First lecture docghayth
 
دورة صيانة مختصر
دورة صيانة مختصردورة صيانة مختصر
دورة صيانة مختصرYounes Almansoob
 
نظم التشغيل.ppt
نظم التشغيل.pptنظم التشغيل.ppt
نظم التشغيل.pptAymenAyari10
 
عرض وحدة تقنيات التحكم الرقمي والروبوت
عرض وحدة تقنيات التحكم الرقمي والروبوتعرض وحدة تقنيات التحكم الرقمي والروبوت
عرض وحدة تقنيات التحكم الرقمي والروبوتتقانة
 
Worldshare - oclc | created by Asmaa saad
Worldshare - oclc  | created by Asmaa saadWorldshare - oclc  | created by Asmaa saad
Worldshare - oclc | created by Asmaa saadYOUCAN6
 
منهاج تحليل و تصميم نظم المعلومات
منهاج تحليل و تصميم نظم المعلوماتمنهاج تحليل و تصميم نظم المعلومات
منهاج تحليل و تصميم نظم المعلوماتDrMohammed Qassim
 

Similaire à Ise rt c2_s14_nour_40714 (20)

Control system
Control systemControl system
Control system
 
ورقة أشغل حاسوبي 02
ورقة أشغل حاسوبي 02ورقة أشغل حاسوبي 02
ورقة أشغل حاسوبي 02
 
Part software -
Part   software - Part   software -
Part software -
 
خطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكترونيخطة اختبار لنظام المودل للتعليم الالكتروني
خطة اختبار لنظام المودل للتعليم الالكتروني
 
First lecture
First lectureFirst lecture
First lecture
 
First lecture
First lectureFirst lecture
First lecture
 
نشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرة
نشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرةنشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرة
نشاط قصير في نظم التشغيل المفتوحة والتطبيقات الحرة
 
Scada
ScadaScada
Scada
 
البرمجيات
البرمجياتالبرمجيات
البرمجيات
 
نظام التشغيل
نظام التشغيلنظام التشغيل
نظام التشغيل
 
إدارة الإصدارات (Version Control)
إدارة الإصدارات (Version Control)إدارة الإصدارات (Version Control)
إدارة الإصدارات (Version Control)
 
استخدام الحاسب الألي في نظام المراجعة وليد القضاة
استخدام الحاسب الألي في نظام المراجعة   وليد القضاةاستخدام الحاسب الألي في نظام المراجعة   وليد القضاة
استخدام الحاسب الألي في نظام المراجعة وليد القضاة
 
First lecture doc
First lecture docFirst lecture doc
First lecture doc
 
The migration
The migrationThe migration
The migration
 
دورة صيانة مختصر
دورة صيانة مختصردورة صيانة مختصر
دورة صيانة مختصر
 
نظم التشغيل.ppt
نظم التشغيل.pptنظم التشغيل.ppt
نظم التشغيل.ppt
 
FOSS
FOSSFOSS
FOSS
 
عرض وحدة تقنيات التحكم الرقمي والروبوت
عرض وحدة تقنيات التحكم الرقمي والروبوتعرض وحدة تقنيات التحكم الرقمي والروبوت
عرض وحدة تقنيات التحكم الرقمي والروبوت
 
Worldshare - oclc | created by Asmaa saad
Worldshare - oclc  | created by Asmaa saadWorldshare - oclc  | created by Asmaa saad
Worldshare - oclc | created by Asmaa saad
 
منهاج تحليل و تصميم نظم المعلومات
منهاج تحليل و تصميم نظم المعلوماتمنهاج تحليل و تصميم نظم المعلومات
منهاج تحليل و تصميم نظم المعلومات
 

Plus de Alaa Bar Avi

مبادئ التحرير الإعلامي
مبادئ التحرير الإعلاميمبادئ التحرير الإعلامي
مبادئ التحرير الإعلاميAlaa Bar Avi
 
النشرالإلكتروني
النشرالإلكترونيالنشرالإلكتروني
النشرالإلكترونيAlaa Bar Avi
 
أخلاقيات العالم الافتراضي نهائي
أخلاقيات العالم الافتراضي نهائيأخلاقيات العالم الافتراضي نهائي
أخلاقيات العالم الافتراضي نهائيAlaa Bar Avi
 
نموذج عن استبيان
نموذج عن استبيان نموذج عن استبيان
نموذج عن استبيان Alaa Bar Avi
 
تصميم مواقع الشرق الأوسط
تصميم مواقع الشرق الأوسطتصميم مواقع الشرق الأوسط
تصميم مواقع الشرق الأوسطAlaa Bar Avi
 
الإعلام الجديد التفاعلية
الإعلام الجديد   التفاعليةالإعلام الجديد   التفاعلية
الإعلام الجديد التفاعليةAlaa Bar Avi
 

Plus de Alaa Bar Avi (7)

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

Ise rt c2_s14_nour_40714

  • 1. February 6, 2015 ‫الطالبين‬ ‫تنفيذ‬ ‫ونوس‬ ‫يوشع‬–‫قطريب‬ ‫نور‬ ‫وبي‬ ‫د.أحمد‬ ‫إشراف‬ Real Time Systems ‫مادة‬‫الحقيقي‬ ‫الزمن‬ ‫نظم‬
  • 2. 1 RealTimeSystems|6/2/2015 ‫المحتويات‬ ‫فهرس‬ ‫عامة‬ ‫مقدمة‬…........................................................................................................................2 ‫التشغيل‬ ‫نظام‬...........................................................................................................................2 ‫التشغيل‬ ‫نظام‬ ‫تطور‬....................................................................................................................3 ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬.............................................................................................................4 ‫نظام‬ ‫عن‬ ‫لمحة‬QNX Neutrino..................................................................................................4 ‫الذاكرة‬ ‫إدارة‬...........................................................................................................................6 ‫الملفات‬ ‫إدارة‬...........................................................................................................................7 ‫الجدولة‬.................................................................................................................................8 ‫النيسب‬ ‫حاالت‬.........................................................................................................................8 ‫للمزامنة‬ ‫المقدمة‬ ‫التسهيالت‬……………........................................................................................01 ‫الخاتمة‬……………..............................................................................................................00 ‫المراجع‬…………….............................................................................................................00
  • 3. 2 RealTimeSystems|6/2/2015 ‫عامة‬ ‫مقدمة‬: ‫حقيقي‬ ‫زمن‬ ‫تشغيل‬ ‫نظام‬ ‫حول‬ ‫فة‬‫ر‬‫المع‬ ‫كسب‬ ‫هو‬ ‫الوثيقة‬ ‫هذه‬ ‫كتابة‬ ‫من‬QNX‫وذلك‬ ‫لبحثنا‬ ‫هذا‬ ‫التشغيل‬ ‫نظام‬ ‫باختيار‬ ‫قمنا‬ ‫.وقد‬ ‫وداع‬ ً‫ا‬‫جد‬ ‫مفيدة‬ ‫خاصة‬ ‫ات‬‫ز‬‫مي‬ ‫من‬ ‫يحويه‬ ‫لما‬.‫ين‬‫ر‬‫للمطو‬ ‫مة‬ ً‫ا‬‫جد‬ ‫صغير‬ ‫تشغيل‬ ‫كنظام‬ ‫تنفيذه‬ ‫إمكانية‬ ‫هو‬ ‫اته‬‫ز‬‫مي‬ ‫أهم‬ ‫من‬ ‫احدة‬‫و‬‫آت‬‫ز‬‫المتج‬ ‫بتنصيب‬ ‫(يسمح‬‫الوحدات‬ ‫أو‬‫فقط‬ ‫نحتاجها‬ ‫التي‬ ‫اسع‬‫و‬ ‫نظام‬ ‫شبكة‬ ‫إلى‬ ‫إضافة‬ ،)‫معين‬ ‫لتطبيق‬‫ة‬.‫المستخدمين‬ ‫من‬ ‫العديد‬ ‫تخدم‬ ‫الن‬ ‫حاالت‬ ،‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ،‫النظام‬ ‫بنية‬ ‫حول‬ ‫مقبولة‬ ‫فة‬‫ر‬‫مع‬ ‫اكتسبنا‬ ‫وقد‬،‫الملفات‬ ‫ة‬‫ر‬‫إدا‬ ،‫ياسب‬‫نظام‬ ‫في‬ ‫امنة‬‫ز‬‫الم‬‫و‬ ‫الجدولة‬‫و‬QNX. ‫الوثيق‬ ‫هذه‬ً‫ا‬‫جيد‬ ً‫ا‬‫فهم‬ ‫ئ‬‫القار‬ ‫تعطي‬ ‫يقة‬‫ر‬‫بط‬ ‫منظمة‬ ‫ة‬‫التشغيل‬ ‫لنظام‬QNX Neutrino. 1.‫التشغيل‬ ‫نظام‬: .‫ة‬‫ر‬‫الذاك‬‫و‬ ،‫الطابعة‬ ،‫الصلب‬ ‫القرص‬ ‫ومنها‬ ،‫الحاسوب‬ ‫على‬ ‫المتاحة‬ ‫المصادر‬ ‫كل‬ ‫يدير‬ ‫مدير‬ ‫أساسي‬ ‫بشكل‬ ‫هو‬ ‫التشغيل‬ ‫نظام‬ ‫ويتك‬‫ون‬‫نظام‬‫التشغيل‬‫من‬‫وظائف‬‫ة‬‫ر‬‫اإلدا‬‫التي‬‫تحدد‬‫ارد‬‫و‬‫الم‬‫التي‬‫سيتم‬‫استخدامها‬‫من‬‫قبل‬‫مستخدم‬‫معين‬.‫على‬‫سبيل‬،‫المثال‬‫قد‬ ‫يكون‬‫هناك‬‫مستخدمين‬‫الن‬‫و‬‫يحا‬‫الوصول‬‫إلى‬‫نفس‬‫المعلومات‬‫في‬‫نفس‬،‫الوقت‬‫ف‬‫نظام‬‫التشغيل‬‫هو‬‫الذي‬‫يقرر‬‫من‬‫المستخدم‬ ‫الذي‬‫يحصل‬‫على‬‫ال‬‫وصول‬ً‫ال‬‫و‬‫أ‬‫أو‬‫وصولهما‬‫عل‬‫ى‬‫حد‬‫اء‬‫و‬‫س‬‫في‬‫الوقت‬‫نفسه‬. ‫كما‬‫أنه‬‫يأخذ‬‫ار‬‫ر‬‫ق‬‫حول‬‫تخصيص‬‫ة‬‫ر‬‫الذاك‬‫ل‬‫امج‬‫ر‬‫لب‬.‫نظام‬‫التشغيل‬‫ي‬‫تتبع‬‫ما‬‫يقوم‬‫به‬‫كل‬،‫نامج‬‫ر‬‫ب‬‫مقدار‬‫ة‬‫ر‬‫الذاك‬‫ال‬‫م‬،‫ستخدم‬‫ما‬ ‫اقع‬‫و‬‫م‬‫ة‬‫ر‬‫الذاك‬‫التي‬‫يتم‬‫الوصول‬‫إليها‬،‫إ‬‫لخ‬. 1.1‫عناصر‬:‫التشغيل‬ ‫نظام‬ ‫الحاسوب‬ ‫عتاد‬ ‫ة‬‫ر‬‫إلدا‬ ‫برمجيات‬ ‫هو‬ ‫التشغيل‬ ‫نظام‬ ‫عام‬ ‫بشكل‬‫مث‬.‫الشاشة‬ ،‫المفاتيح‬ ‫لوحة‬ ‫ل‬ .‫منطقية‬ ‫يقة‬‫ر‬‫بط‬ ‫الملفات‬ ‫وتنظيم‬ ‫تيب‬‫ر‬‫ت‬ ‫في‬ ‫يساعد‬ ‫الذي‬ ‫النظام‬ ‫ملف‬ .‫ومعطياتهم‬ ‫امجهم‬‫ر‬‫ب‬ ‫وتنفيذ‬ ‫تشغيل‬ ‫في‬ ‫المستخدمين‬ ‫تساعد‬ ‫التي‬ ‫امر‬‫و‬‫األ‬ ‫لغة‬ .‫التشغيل‬ ‫وضع‬ ‫في‬ ،‫الحاسب‬ ‫جهاز‬ ‫على‬ ‫األوقات‬ ‫جميع‬ ‫في‬ ‫يعمل‬ ‫نامج‬‫ر‬‫كب‬ ‫التشغيل‬ ‫نظام‬ ‫اعتبار‬ ‫يمكن‬ ‫وبالتالي‬ ‫هناك‬‫بين‬ ‫قوية‬ ‫عالقة‬ ‫هناك‬ ‫أن‬ ‫كما‬ ،‫التشغيل‬ ‫أنظمة‬ ‫من‬ ‫احد‬‫و‬ ‫ع‬‫نو‬ ‫سوى‬ ‫تشغل‬ ‫أن‬ ‫يمكن‬ ‫ال‬ ‫الكمبيوتر‬ ‫ة‬‫ز‬‫أجه‬ ‫من‬ ‫العديد‬ .‫العتاديات‬‫و‬ ‫التشغيل‬ ‫نظام‬
  • 4. 3 RealTimeSystems|6/2/2015 1.1‫التشغيل‬ ‫نظام‬ ‫من‬ ‫المقدمة‬ ‫الخدمات‬: ‫الزمن‬‫و‬ ‫تيب‬‫ر‬‫الت‬ ‫ويحدد‬ ،‫ينفذ‬ ‫أن‬ ‫يجب‬ ‫التطبيقات‬ ‫أي‬ ‫يحدد‬ ‫التشغيل‬ ‫نظام‬)‫امنة‬‫ز‬‫الم‬‫و‬ ‫(الجدولة‬. ‫مشاركة‬ ‫يدير‬.‫متعددة‬ ‫تطبيقات‬ ‫بين‬ ‫الداخلية‬ ‫ة‬‫ر‬‫الذاك‬ ‫المخرجات‬‫و‬ ‫المدخالت‬ ‫ويتولى‬ ‫يعالج‬‫و‬ ‫الحاسب‬ ‫بين‬.‫إلخ‬ ،‫الطابعة‬ ،‫الصلب‬ ‫القرص‬ ‫مثل‬ ‫الطرفية‬ ‫ة‬‫ز‬‫األجه‬ .‫تظهر‬ ‫التي‬ ‫األخطاء‬ ‫أو‬ ‫الحاالت‬ ‫حول‬ ‫المستخدمين‬ ‫أو‬ ‫للتطبيقات‬ ‫الرسائل‬ ‫يرسل‬ ‫ويطلق‬‫على‬‫ال‬‫امج‬‫ر‬‫ب‬‫األ‬‫ى‬‫خر‬‫غير‬‫أنظمة‬‫التشغيل‬‫ب‬‫التطبيقات‬‫الت‬‫ي‬‫ترسل‬‫طلبات‬‫إلى‬‫نظام‬‫التشغيل‬‫ل‬‫ا‬ ‫على‬ ‫لحصول‬‫لخدمات‬‫من‬ ‫خالل‬‫اجهة‬‫و‬‫تطبيق‬‫نامج‬‫ر‬‫الب‬ً‫ا‬‫تحديد‬(API.)‫يمكن‬‫ل‬‫لتطبيقات‬‫اصل‬‫و‬‫الت‬‫مع‬‫نظام‬‫التشغيل‬‫يقتين‬‫ر‬‫بط‬-‫يمكن‬‫لل‬‫تطبيق‬‫استدعاء‬ ‫وحدة‬‫من‬‫نظام‬،‫التشغيل‬‫التي‬‫و‬‫سوف‬،‫التطبيقات‬ ‫هذه‬ ‫من‬ ‫المطلوبة‬ ‫الوظيفة‬ ‫بتنفيذ‬ ‫تقوم‬‫أو‬‫إذا‬‫كان‬‫هن‬‫اك‬‫شيء‬‫ذو‬‫أولوية‬‫أعلى‬ ‫يحتاج‬‫إلى‬‫تشغيل‬‫فال‬‫نامج‬‫ر‬‫ب‬‫مقاطعته‬ ‫التنفيذ)تتم‬ ‫قيد‬ ‫نامج‬‫ر‬‫الب‬ ‫أي‬ ‫اء‬‫ر‬‫(اإلج‬‫و‬‫يتم‬‫التعامل‬‫مع‬‫المقاطعة‬‫من‬‫قبل‬‫نظام‬‫التشغيل‬.‫بعد‬ ‫انتهاء‬‫المقاطعة‬‫ي‬ ‫نامج‬‫ر‬‫الب‬‫ستأنف‬‫من‬‫النقطة‬‫التي‬‫توقف‬‫عندها‬. 1.:‫التشغيل‬ ‫نظام‬ ‫تطور‬ ‫في‬1491‫كانت‬‫ة‬‫ز‬‫أجه‬‫الكمبيوتر‬‫تشغل‬‫نامج‬‫ر‬‫ب‬‫احد‬‫و‬‫فقط‬‫في‬‫كل‬‫ة‬‫ر‬‫م‬.‫كانت‬‫وتشغل‬ ‫الحاسب‬ ‫على‬ ‫تحمل‬ ‫امج‬‫ر‬‫الب‬. ‫إذا‬‫كان‬‫هناك‬،‫خطأ‬‫كان‬‫ال‬‫مبرمج‬‫يحتاج‬‫للبدء‬‫بالعمل‬‫من‬‫جديد‬.‫حتى‬‫لو‬‫لم‬‫يعمل‬‫نامج‬‫ر‬‫الب‬‫بشكل‬،‫صحيح‬‫ال‬‫مبرمج‬‫ليستطيع‬ ‫ا‬‫لعمل‬‫على‬‫الجهاز‬‫مباشر‬ ‫بشكل‬. ‫في‬‫عام‬1491،‫التكنولوجيا‬‫تقدمت‬،‫العديد‬‫و‬‫من‬‫امج‬‫ر‬‫الب‬‫ال‬‫الممكن‬ ‫من‬ ‫أصبح‬ ‫مختلفة‬‫ين‬‫ز‬‫تخ‬‫ها‬‫في‬‫ة‬‫ر‬‫الذاك‬‫وتنفيذها‬‫في‬‫نفس‬ ‫الوقت‬.‫هذا‬‫هو‬‫المعروف‬‫باسم‬"multiprogramming".‫تحسن‬‫األداء‬ً‫ا‬‫مسموح‬ ‫أصبح‬‫و‬‫لوحدة‬‫المعالجة‬‫ية‬‫ز‬‫المرك‬‫أن‬‫ت‬‫كون‬ ‫مشغو‬‫لة‬‫ال‬‫و‬‫ط‬‫الوقت‬ً‫ا‬‫يب‬‫ر‬‫تق‬. 1.1:‫التشغيل‬ ‫نظم‬ ‫اع‬‫و‬‫أن‬ ‫ويمكن‬‫تصنيف‬‫أنظمة‬‫التشغيل‬‫يقتين‬‫ر‬‫بط‬-،ً‫ال‬‫و‬‫أ‬‫حسب‬‫عدد‬‫المهام‬‫التي‬‫يمكن‬‫أن‬‫تؤديها‬‫في‬‫نفس‬،‫الوقت‬،ً‫ا‬‫وثاني‬‫عدد‬ ‫المستخدمين‬‫النظام‬ ‫استخدام‬ ‫بإمكانهم‬ ‫الذين‬‫في‬‫نفس‬‫الوقت‬.‫فئات‬ ‫هناك‬‫اسعة‬‫و‬‫من‬‫أنظمة‬‫التشغيل‬‫هي‬: ‫أنظمة‬‫ت‬‫شغيل‬‫الحقيقي‬ ‫الزمن‬-‫هناك‬‫معينة‬ ‫زمنية‬ ‫ة‬‫ر‬‫فت‬ ‫التنفيذ‬‫و‬ ‫االستجابة‬ ‫إلعطاء‬ ‫اء‬‫ر‬‫اإلج‬ ‫على‬ ‫مفروضة‬ ‫زمنية‬ ‫قيود‬. ‫احدة‬‫و‬ ‫مهمة‬ ‫ويؤدي‬ ،‫وحيد‬ ‫بمستخدم‬ ‫تشغيل‬ ‫نظام‬-‫احدة‬‫و‬ ‫مهمة‬ ‫أداء‬ ‫المستخدم‬ ‫يستطيع‬ ‫بحيث‬ ‫الكمبيوتر‬ ‫ة‬‫ر‬‫إلدا‬ ‫مصمم‬ .‫احد‬‫و‬ ‫وقت‬ ‫في‬ ‫فعال‬ ‫بشكل‬ ‫متعددة‬ ‫مهام‬ ‫ويؤدي‬ ،‫وحيد‬ ‫بمستخدم‬ ‫تشغيل‬ ‫نظام‬–‫أن‬ ‫التشغيل‬ ‫طور‬ ‫في‬ ‫متعددة‬ ‫امج‬‫ر‬‫ب‬ ‫لديه‬ ‫وحيد‬ ‫لمستخدم‬ ‫يسمح‬ .‫الوقت‬ ‫نفس‬ ‫في‬ ‫تنفذ‬
  • 5. 4 RealTimeSystems|6/2/2015 ‫نظام‬‫تشغيل‬‫المستخدمين‬ ‫متعدد‬–.‫المتعددين‬ ‫المستخدمين‬ ‫متطلبات‬ ‫ازن‬‫و‬‫ت‬ ‫من‬ ‫يتأكد‬ ‫نظام‬‫النياسب‬ ‫متعدد‬–.‫احد‬‫و‬ ‫بوقت‬ ‫تعمل‬ ‫أن‬ ‫نامج‬‫ر‬‫الب‬ ‫من‬ ‫المختلفة‬ ‫اء‬‫ز‬‫لألج‬ ‫يسمح‬ 3.:‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬ ‫نظم‬‫تشغيل‬‫ا‬‫ل‬‫زمن‬‫الحقيقي‬‫ه‬‫ي‬‫نظ‬‫م‬‫الحقيق‬ ‫الزمن‬ ‫تطبيقات‬ ‫أجل‬ ‫من‬ ‫ها‬‫تطوير‬ ‫يتم‬‫ي‬.‫يجب‬ ‫التي‬ ‫العملية‬‫ضمن‬ ‫تنفذ‬ ‫أو‬ ‫تحدث‬ ‫أن‬ ‫حقيقي‬ ‫زمن‬ ‫عملية‬ ‫تسمى‬ ‫النظام‬ ‫فشل‬ ‫إلى‬ ‫امها‬‫ر‬‫احت‬ ‫عدم‬ ‫يؤدي‬ ‫قد‬ ‫التي‬‫و‬ ‫اضحة‬‫و‬ ‫زمنية‬ ‫قيود‬.‫المثال‬‫و‬‫النموذجي‬‫لعملية‬‫في‬‫الوقت‬ ‫الحقيقي‬‫هو‬‫كسر‬‫ة‬‫ر‬‫سيا‬.‫ومن‬‫شأن‬‫عملية‬‫في‬‫الوقت‬‫الحقيقي‬‫أن‬‫يكون‬‫السائق‬‫أ‬‫وقف‬‫ة‬‫ر‬‫السيا‬‫قبل‬‫أن‬‫تصل‬‫إلى‬‫الجدار‬.‫العديد‬ ‫من‬‫ة‬‫ز‬‫األجه‬‫تتطلب‬‫وحدة‬‫تحكم‬‫حقيقي‬ ‫زمن‬‫لتجنب‬‫ها‬‫تدمير‬-‫نفسها‬،‫مما‬‫يؤ‬ ‫قد‬‫د‬‫ي‬‫إلى‬‫إصابة‬‫شخص‬‫أو‬‫إتالف‬‫األشياء‬‫ى‬‫األخر‬. ‫نستطيع‬‫أن‬‫نقول‬‫كل‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬ ‫في‬ ‫أنه‬ ‫كخالصة‬‫من‬‫التشغيل‬ ‫وزمن‬ )‫(االستجابة‬ ‫الفعل‬ ‫رد‬ ‫زمن‬‫أقصر‬‫من‬‫الحد‬ ‫األقصى‬‫ح‬‫المسمو‬‫به‬" ‫زمني‬ ‫كتأخير‬delay time".‫أنو‬‫اع‬:‫هي‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظم‬ ‫خوة‬‫الر‬ ‫النظم‬soft rtos":"‫أهمية‬ ‫من‬ ‫ينقص‬ ‫الزمنية‬ ‫لحدوده‬ ‫ه‬‫ز‬‫تجاو‬ ‫كان‬ ‫إذا‬ ً‫ا‬‫و‬‫خ‬‫ر‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظام‬ ‫يكون‬ .‫معدومة‬ ‫تصبح‬ ‫ال‬ ‫قيمتها‬ ‫ولكن‬ ،‫بها‬ ‫يقوم‬ ‫التي‬ ‫األعمال‬ " ‫الصعبة‬ ‫النظم‬hard rtos:"‫الز‬ ‫لحدودها‬ ‫ها‬‫تجاوز‬ ‫يؤدي‬ ‫قد‬ ‫التي‬ ‫النظم‬ ‫وهي‬‫وفشل‬ ‫وتعطل‬ ‫ثية‬‫ر‬‫كا‬ ‫نتائج‬ ‫إلى‬ ‫منية‬ .‫فقط‬ ‫احدة‬‫و‬ ‫ة‬‫ر‬‫لم‬ ‫حصلت‬ ‫ولو‬ ‫بالكامل‬ ‫النظام‬ " ‫القاسية‬ ‫النظم‬firm rtos:"‫لعدد‬ ‫ذلك‬ ‫حصل‬ ‫إذا‬ ‫ثية‬‫ر‬‫كا‬ ‫نتائج‬ ‫إلى‬ ‫الزمنية‬ ‫لحدودها‬ ‫تعديها‬ ‫يؤدي‬ ‫ال‬ ‫التي‬ ‫النظم‬ ‫وهي‬ ‫بال‬ ‫النظام‬ ‫وفشل‬ ‫ثية‬‫ر‬‫كا‬ ‫نتائج‬ ‫إلى‬ ‫سيؤدي‬ ‫أكثر‬ ‫ذلك‬ ‫تكرر‬ ‫لو‬ ‫ولكن‬ ،‫ات‬‫ر‬‫الم‬ ‫من‬ ‫قليل‬.‫كامل‬ ‫المتطلبات‬‫ئيسية‬‫ر‬‫ال‬‫ألنظمة‬‫التشغيل‬‫في‬‫الوقت‬‫الحقيقي‬‫هي‬‫الحتمية‬(‫الحاجة‬‫إلى‬‫تحقيق‬‫النتيجة‬‫الصحيحة‬‫في‬‫كل‬‫حالة‬)، ‫االستجابة‬‫و‬(‫الطلبات‬ ‫تخديم‬ ‫زمن‬)،‫التحكم‬‫و‬(‫امل‬‫و‬‫الع‬‫ة‬‫ر‬‫المؤث‬‫على‬‫التحكم‬‫ه‬‫و‬‫عدد‬‫اءات‬‫ر‬‫اإلج‬‫في‬‫ة‬‫ر‬‫الذاك‬،‫ئيسية‬‫ر‬‫ال‬‫معامالت‬ ‫و‬ ‫االستدعاء‬،‫الترحيل‬‫وتخصيص‬‫األولوية‬)،‫الموثوقية‬(‫إعادة‬‫التشغيل‬‫هو‬‫ار‬‫ر‬‫ق‬‫سيء‬.) 9.‫نظام‬ ‫عن‬ ‫لمحة‬QNX Neutrino: ‫نظام‬ ‫يصنف‬QNX Neutrino‫زمن‬ ‫تشغيل‬ ‫كنظام‬‫ح‬.‫صعب‬ ‫قيقي‬‫لمعالجة‬ ‫التشغيل‬ ‫نظام‬ ‫على‬ ‫الحقيقي‬ ‫الزمن‬ ‫تطبيقات‬ ‫تعتمد‬ .‫زمنية‬ ‫قيود‬ ‫ضمن‬ ‫المتعددة‬ ‫األحداث‬ ‫وهو‬‫نظام‬‫تش‬‫ضمن‬ ‫مضاعفة‬ ‫أحداث‬ ‫لمعالجة‬ ‫غيل‬‫قي‬‫زمنية‬ ‫ود‬‫تشغيل‬ ‫نظام‬ .QNX‫المهام‬ ‫تعدد‬ ‫مثل‬ ‫تطبيقات‬ ‫يقدم‬،‫مقاد‬ ،‫باألولوية‬‫الجدولة‬،‫الشفعية‬‫تبديل‬‫بشكل‬ ‫السياق‬.‫يع‬‫ر‬‫س‬
  • 6. 5 RealTimeSystems|6/2/2015 ‫يعتبر‬QNX‫مرن‬ ‫تشغيل‬ ‫نظام‬‫حيث‬‫ل‬ ‫التشغيل‬ ‫نظام‬ ‫تخصيص‬ ‫ين‬‫ر‬‫للمطو‬ ‫يمكن‬‫احتياجات‬ ‫تلبية‬‫ين‬‫ر‬‫للمطو‬ ‫يسمح‬ .‫التطبيقات‬ ‫النظام‬ ‫بضبط‬‫التي‬ ‫المصادر‬ ‫تلك‬ ‫فقط‬ ‫ليستخدم‬‫يتطلبها‬‫إلنجاز‬‫العمل‬،‫مبدأين‬ ‫خالل‬ ‫من‬ ‫الكفاءة‬ ‫من‬ ‫عالية‬ ‫جة‬‫در‬ ‫ويحقق‬ ‫أساسيين‬: ‫بنية‬‫النو‬‫ي‬‫ة‬)‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫الن‬ ‫ية‬‫ر‬‫(معما‬Microkernel architecture. .)‫داخلية(تنسيق‬ ‫اصل‬‫و‬‫ت‬ ‫عمليات‬ ‫على‬ ‫ة‬‫ز‬‫تك‬‫ر‬‫م‬ ‫رسائل‬ 9.1‫بنية‬)‫ية‬‫ر‬‫(معما‬‫النو‬‫ي‬‫ة‬: ‫يتكون‬QNX‫عملي‬ ‫من‬ ‫مجموعة‬ ‫عن‬ ‫مسؤولة‬ ‫ة‬‫ر‬‫صغي‬ ‫اة‬‫و‬‫ن‬ ‫من‬‫ابطة‬‫ر‬‫مت‬ ‫ات‬،‫اة‬‫و‬‫الن‬ ‫تعتبر‬ ‫ة‬‫ز‬‫األجه‬ ‫بعض‬ ‫في‬ .‫يق‬‫ر‬‫الف‬ ‫مثل‬ ‫اة‬‫و‬‫الن‬ ‫بنية‬ ‫ولكن‬ ‫ى‬‫األخر‬ ‫الوظائف‬ ‫من‬ ‫العديد‬ ‫أيضا‬ ‫ولها‬ ‫بالكامل‬ ‫التشغيل‬ ‫نظام‬‫ألداء‬ ‫مكرسة‬ ‫تكون‬ ‫النوية‬‫األساسية‬ ‫المهام‬ ‫من‬ ‫اثنين‬: :‫الرسائل‬ ‫ير‬‫ر‬‫تم‬‫ت‬ ‫النوية‬‫في‬ ‫ساعد‬‫جميع‬ ‫مع‬ ‫التعامل‬‫بين‬ ‫الرسائل‬‫اءات‬‫ر‬‫اإلج‬‫ضمن‬‫الت‬ ‫نظام‬‫شغيل‬.‫كله‬ :‫الجدولة‬،‫مقاطعة‬ ‫أو‬ ‫لرسالة‬ ‫كنتيجة‬ ‫يكون‬ ‫أن‬ ‫ممكن‬ ‫اء‬‫ر‬‫لإلج‬ ‫الحالة‬ ‫تغيير‬ ،‫حالته‬ ‫اء‬‫ر‬‫إج‬ ‫غير‬ ‫كلما‬ ‫يستدعى‬ ‫المجدول‬ ‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫الن‬ ‫من‬ ‫ء‬‫جز‬ ‫هو‬ ‫المجدول‬. ‫خدمات‬ ‫جميع‬ ‫مع‬ ‫التعامل‬ ‫يتم‬QNX‫النو‬ ‫تقدمها‬ ‫التي‬ ‫تلك‬ ‫باستثناء‬‫ية‬‫عمليات‬ ‫عبر‬QNX‫القياسي‬.‫ة‬ ‫نظام‬ ‫تركيب‬QNX‫يتأ‬:‫التالية‬ ‫النظام‬ ‫عمليات‬ ‫من‬ ‫لف‬ Fig.1 the QNX Microkernel coordinating the system managers
  • 7. 6 RealTimeSystems|6/2/2015 ‫مدير‬‫اإل‬‫اءات‬‫ر‬‫ج‬‫عن‬ ‫المسؤول‬ ‫هو‬‫ة‬‫ر‬‫إدا‬‫اء‬‫ر‬‫اإلج‬‫ة‬‫ر‬‫إلدا‬ ‫باإلضافة‬‫ة‬‫ر‬‫الذاك‬،‫ف‬‫ال‬ ‫اء‬‫ر‬‫مد‬‫نظام‬‫يقدم‬‫ون‬‫ال‬‫خدمات‬‫التي‬‫ال‬‫تقدم‬‫ها‬ ‫النوية‬. 9.1‫عمليات‬‫اصل‬‫و‬‫الت‬‫الداخلية‬)‫اءات‬‫ر‬‫اإلج‬ ‫(بين‬"IPC": ‫الحقيقي‬ ‫الزمن‬ ‫بيئة‬ ‫في‬‫المهام‬ ‫متعدد‬‫التشغيل‬ ‫نظام‬‫بعضها‬ ‫مع‬ ‫اصل‬‫و‬‫تت‬ ‫أن‬ ‫العمليات‬ ‫لكل‬ ‫تسمح‬ ‫تقنيات‬ ‫يقدم‬ ‫أن‬ ‫يجب‬ ‫البعض‬‫اإل‬ ‫بين‬ ‫االتصال‬ .‫جر‬‫اءات‬‫عمل‬ ‫فكل‬ ‫المتعاونة‬ ‫العمليات‬ ‫من‬ ‫كمجموعة‬ ‫التطبيق‬ ‫تصميم‬ ‫في‬ ‫يساعد‬‫ء‬‫جز‬ ‫تعالج‬ ‫ية‬ ‫التطبيق‬ ‫كل‬ ‫من‬ ‫احد‬‫و‬. ‫نظام‬ ‫يوفر‬QNX‫ا‬‫ر‬‫اإلج‬ ‫بين‬ ‫االتصال‬ ‫ات‬‫ر‬‫قد‬ ‫من‬ ‫قوية‬ ‫مجموعة‬‫ءات‬.‫التطبيق‬ ‫لتصميم‬ ‫نظام‬ ‫يعتبر‬QNX‫ك‬ ‫يستعمل‬ ‫ي‬‫تجار‬ ‫حقيقي‬ ‫زمن‬ ‫تشغيل‬ ‫نظام‬‫اإل‬ ‫بين‬ ‫لالتصال‬ ‫أساسية‬ ‫أداة‬‫جر‬‫اءا‬‫ت‬،‫فت‬‫كرزمة‬ ‫الرسالة‬ ‫عتبر‬ ‫ال‬ ‫الرسالة‬ ‫في‬ ‫المعلومات‬ . ‫ى‬‫أخر‬ ‫إلى‬ ‫عملية‬ ‫من‬ ‫تمرر‬ ‫البايتات‬ ‫من‬‫بل‬ ‫لبعضها‬ ‫المعلومات‬ ‫ير‬‫ر‬‫بتم‬ ‫للعمليات‬ ‫فقط‬ ‫تسمح‬ ‫العمليات‬ ‫هذه‬ ‫تنفيذ‬ ‫امنة‬‫ز‬‫م‬ ‫في‬ ً‫ا‬‫أيض‬ ‫تساعد‬‫ب‬‫الرسالة‬ ‫أرسلت‬ ‫ينما‬،‫استقبلت‬،‫ورد‬،‫عليها‬‫اإل‬‫الحالة‬ ‫لتغيير‬ ‫تخضع‬ ‫اءات‬‫ر‬‫ج‬. ‫و‬ ‫األولويات‬ ‫فة‬‫ر‬‫بمع‬‫اءات‬‫ر‬‫اإلج‬ ‫بجدولة‬ ‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫الن‬ ‫تقوم‬ ،‫الحاالت‬. ‫ونظام‬QNX" ‫الحقيقي‬ ‫الزمن‬ ‫مع‬ ‫افق‬‫و‬‫مت‬ ‫محمول‬ ‫تشغيل‬ ‫نظام‬ ‫اجهة‬‫و‬ ‫هو‬POSIX‫نظام‬ ‫يتصرف‬ ‫كيف‬ ‫يحدد‬ ‫الذي‬ ،" ‫نظام‬ ‫من‬ ‫تطبيقاتهم‬ ‫ا‬‫و‬‫لينقل‬ ‫للمبرمجيبن‬ ‫أسهل‬ ‫إياه‬ ً‫ال‬‫جاع‬ ،‫النياسب‬‫و‬ ‫ات‬‫ر‬‫اإلشا‬ ‫المتضمنة‬ ‫األساسية‬ ‫العمليات‬ ‫ويحدد‬ ،‫التشغيل‬ ‫التشغيل‬ ‫نظام‬ ،‫آلخر‬ ‫تشغيل‬QNX:‫ية‬‫ر‬‫كمعما‬ ‫لآللة‬ ‫يات‬‫ر‬‫معما‬ ‫على‬ ‫يعمل‬ like x86, ARM, XScale, PowerPC, MIPS, and SH-4. 5.‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬: ‫من‬ ‫جدا‬ ‫القليل‬ ‫هناك‬ ‫النوية‬ ‫بنية‬ ‫تحت‬‫الرماز‬‫يعمل‬‫في‬‫وضع‬‫اة‬‫و‬‫الن‬‫الذي‬‫أن‬ ‫يمكن‬‫ي‬‫سبب‬‫فشلها‬‫أن‬ ‫يمكن‬ ‫الفردية‬ ‫العمليات‬ . ‫ب‬ ‫وتتوقف‬ ‫تبدأ‬‫يوفر‬ ‫وهذا‬ ‫النظام‬ ‫توقف‬ ‫أن‬ ‫حاجة‬ ‫دون‬ ‫ديناميكي‬ ‫شكل‬‫ار‬‫ر‬‫االستق‬‫ة‬‫ر‬‫إدا‬ ‫في‬ ‫ويفيد‬ ‫العالي‬‫بكفاءة‬ ‫ارد‬‫و‬‫الم‬. .‫المتانة‬ ‫تحسين‬ ‫هي‬ ‫ة‬‫ر‬‫للذاك‬ ‫حماية‬ ‫بإضافة‬ ‫المكتسبة‬ ‫األساسية‬ ‫ة‬‫ز‬‫المي‬ 5.1‫وحد‬‫ات‬‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬"MMUs": ‫حماية‬ ‫مع‬،‫ة‬‫ر‬‫الذاك‬‫كانت‬ ‫إذا‬‫من‬ ‫احدة‬‫و‬‫في‬ ‫المنفذة‬ ‫اءات‬‫ر‬‫اإلج‬‫بيئة‬‫ت‬‫المهام‬ ‫عدد‬‫ت‬‫الوصو‬ ‫حاول‬‫ل‬‫التي‬ ‫ة‬‫ر‬‫للذاك‬‫لم‬‫تخصص‬ ‫لها‬‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ‫وحدة‬ ‫،فتقوم‬‫العتادية‬‫بإعالم‬‫التشغيل‬ ‫نظام‬‫الذي‬‫النيسب‬ ‫يوقف‬.‫ان‬‫و‬‫عن‬ ‫يحمي‬ ‫هذا‬‫العملية‬‫ين‬‫ر‬‫اآلخ‬ ‫عن‬
  • 8. 7 RealTimeSystems|6/2/2015 .‫ويمنع‬‫الترميز‬ ‫أخطاء‬‫النيسب‬ ‫في‬‫في‬‫احدة‬‫و‬ ‫عملية‬‫من‬‫ة‬‫ر‬‫الذاك‬ ‫تدمير‬‫تستخدم‬ ‫التي‬‫في‬‫عمليات‬‫نياسب‬‫ى‬‫أخر‬،‫يمكن‬‫لنظام‬ ‫التشغيل‬‫إحباط‬‫اء‬‫ر‬‫إج‬‫لحظة‬‫خرق‬ ‫حدوث‬‫الوصول‬ ‫ة‬‫ر‬‫ذاك‬)‫(تجميد‬. ‫صفحات‬ ‫من‬ ‫عدد‬ ‫إلى‬ ‫يائية‬‫ز‬‫الفي‬ ‫ة‬‫ر‬‫الذاك‬ ‫تقسم‬ ‫النموذجية‬ ‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ‫وحدة‬4K‫من‬ ‫مجموعة‬ ‫يستخدم‬ ‫المعالج‬ ،‫جداول‬ ‫العنا‬ ‫من‬ ‫ائط‬‫ر‬‫خ‬ ‫تحدد‬ ‫الصفحة‬ ‫جداول‬ .‫النظام‬ ‫ة‬‫ر‬‫ذاك‬ ‫في‬ ‫نة‬‫ز‬‫المخ‬ ‫الصفحات‬‫و‬‫ين‬ ‫بينما‬ ،‫اضية‬‫ر‬‫االفت‬ ‫ين‬‫ف‬‫النيسب‬ ‫ذ‬،‫جداول‬ ‫النيسب‬ ‫يستخدمه‬ ‫الذي‬ ‫ة‬‫ر‬‫الذاك‬ ‫ان‬‫و‬‫بعن‬ ‫تتحكم‬ ‫الصفحات‬. ‫ة‬‫ر‬‫الكبي‬ ‫المساحات‬ ‫ذات‬ ‫للعناوين‬‫مع‬‫الصفحة‬ ‫جدول‬ ‫رقم‬ ‫مدخالت‬ ،‫النياسب‬‫و‬ ‫اءات‬‫ر‬‫اإلج‬ ‫من‬ ‫العديد‬‫تصف‬ ‫التي‬‫هي‬ ‫ائط‬‫ر‬‫الخ‬ ‫لتحسين‬ .ً‫ا‬‫جد‬ ‫هامة‬،‫األداء‬‫الخابية‬ ‫ة‬‫ر‬‫الذاك‬،‫من‬ ‫اء‬‫ز‬‫أج‬ ‫تستخدم‬‫الصف‬ ‫جداول‬‫حة‬‫جية‬‫الخار‬‫ض‬‫من‬(translation look- aside buffer).‫المصادر‬ ‫استخدام‬ ‫لتقليل‬ 9.‫الملفات‬ ‫ة‬‫ر‬‫إدا‬: ‫يوفر‬QNX‫من‬ ‫غنية‬ ‫متنوعة‬ ‫مجموعة‬‫الملفات‬ ‫نظم‬‫ت‬ ‫التي‬‫نفذ‬‫ج‬‫خار‬‫اة‬‫و‬‫الن‬.‫معظم‬‫أنظمة‬‫الملفات‬‫هي‬‫مد‬‫اء‬‫ر‬‫ل‬.‫لمصادر‬‫كل‬ ‫من‬‫الملفات‬ ‫نظم‬‫أولوية‬ ‫يأخذ‬‫اسم‬ ‫فضاء‬‫تدعى‬ ‫التي‬‫و‬ ‫المسار‬"mountpoint"‫يو‬ .‫(فتح‬ ‫القياسية‬ ‫الخدمات‬ ‫الملفات‬ ‫نظام‬ ‫فر‬ –‫إغالق‬–‫اءة‬‫ر‬‫ق‬–) ... ‫كتابة‬‫خالل‬ ‫من‬"POSIX". ‫يمكن‬ ‫النظام‬ ‫ملفات‬‫ديناميكي‬ ‫بشكل‬ ‫تتوقف‬ ‫أن‬‫و‬ ‫تعمل‬ ‫أن‬. ‫ممكن‬‫تشغيل‬‫من‬ ‫العديد‬‫نظ‬‫احد‬‫و‬ ‫وقت‬ ‫في‬ ‫الملفات‬ ‫م‬. ‫وي‬ ‫احد‬‫و‬ ‫جهاز‬ ‫على‬ ‫الملفات‬ ‫تعمل‬‫آخر‬ ‫جهاز‬ ‫أي‬ ‫من‬ ‫إليها‬ ‫الوصول‬ ‫مكن‬. ‫للمستخد‬ ‫يمكن‬‫م‬‫موقع‬ ‫تحديد‬‫االتصال‬‫و‬‫الملفات‬ ‫نظام‬ ‫مع‬‫مدي‬ ‫مع‬ ‫المسجل‬‫وتصنف‬ ‫العملية‬‫ر‬‫الملفات‬ ‫أنظمة‬‫إلى‬‫الفئات‬ ‫التالية‬: ‫ة‬‫ر‬‫الصو‬‫الذي‬ ‫الملفات‬ ‫نظام‬ :‫يمثل‬‫الوحدات‬‫ة‬‫ر‬‫الصو‬ ‫في‬‫دائم‬ ‫بشكل‬ ‫ويوجد‬. :‫الكتلة‬‫التقليدية‬ ‫الملفات‬ ‫نظام‬‫تعمل‬ ‫التي‬‫ة‬‫ز‬‫أجه‬ ‫على‬‫كتلة‬‫مثال‬‫ا‬‫ر‬‫األق‬ ‫ومحركات‬ ‫الصلبة‬ ‫اص‬‫ر‬‫ألق‬.‫ص‬ .‫الفالش‬ ‫ة‬‫ر‬‫ذاك‬ ‫ة‬‫ز‬‫ألجه‬ ً‫ا‬‫خصيص‬ ‫صمم‬ ‫بالكتلة‬ ‫موجه‬ ‫غير‬ ‫نظام‬ :‫الفالش‬ :‫الشبكة‬‫توفر‬ ‫التي‬ ‫الملفات‬ ‫أنظمة‬‫الوصول‬ ‫للشبكة‬‫بعيد‬ ‫كومبيوتر‬ ‫على‬ ‫النظام‬ ‫لملفات‬. QNX‫اضية‬‫ر‬‫االفت‬ ‫الملفات‬ ‫أنظمة‬ ‫يقدم‬ ‫اضي‬‫ر‬‫االفت‬.‫مختلفة‬
  • 9. 8 RealTimeSystems|6/2/2015 7.‫الجدولة‬Scheduling: ‫نظام‬ ‫يعتمد‬QNX Neutrino‫على‬ ‫الجدولة‬ ‫في‬‫النياسب‬threads""‫يتم‬ ‫األعلى‬ ‫األولوية‬ ‫ذو‬ ‫فالنيسب‬ .‫اءات‬‫ر‬‫اإلج‬ ‫من‬ ً‫ال‬‫بد‬ .‫له‬ ‫ينتمي‬ ‫الذي‬ ‫اء‬‫ر‬‫اإلج‬ ‫عن‬ ‫النظر‬ ‫بغض‬ ،‫للتنفيذ‬ ‫ه‬‫ر‬‫أختيا‬ 7.1:‫ألولوية‬ ‫نطاق‬ QNX Neutrino‫لديه‬‫نطاق‬‫أولوية‬‫من‬1‫إلى‬93.‫أرقام‬‫أعلى‬‫تمثل‬‫أولوية‬‫أعلى‬.‫فإننا‬‫يمكن‬‫نضبط‬‫ونستعيد‬‫األ‬‫ولوية‬‫لنيسب‬ ‫باستخ‬‫دام‬‫ابع‬‫و‬‫الت‬)(setprio‫و‬)(getprio.‫سيؤدي‬‫ذلك‬‫إلى‬‫تغيير‬‫األولوية‬‫للنيسب‬‫فقط‬‫وليس‬‫يحتويه‬ ‫الذي‬ ‫اء‬‫ر‬‫لإلج‬.‫هناك‬ ‫اء‬‫ر‬‫اإلج‬ ‫ضمن‬ ‫أولويته‬ ‫ضبط‬ ‫يتم‬ ‫الذي‬ ‫للنيسب‬ ‫استدعاء‬ ‫عمليه‬.‫هناك‬‫خمول‬ ‫نيسب‬"idle"‫خاص‬‫له‬‫األ‬‫ولوية‬1‫و‬‫هو‬‫دائما‬‫على‬ ‫استعداد‬‫للتنفيذ‬.‫كل‬‫مستوى‬‫أولوية‬‫لديه‬‫تل‬‫ر‬‫االنتظار‬‫به‬ ‫الخاص‬‫من‬‫النياسب‬‫لتنفيذها‬. 7.2(‫سياسات‬‫ارزميات‬‫و‬‫خ‬:‫)الجدولة‬ " ً‫ال‬‫و‬‫أ‬ ‫ج‬‫يخر‬ ً‫ال‬‫و‬‫أ‬ ‫يدخل‬ ‫من‬FIFO Scheduling"–‫المعالج‬ ‫تنفيذه(يترك‬ ‫ينتهي‬ ‫حتى‬ ‫التنفيذ‬ ‫حال‬ ‫في‬ ‫يبقى‬ ‫النيسب‬ .‫أعلى‬ ‫أولوية‬ ‫ذو‬ ‫آخر‬ ‫اء‬‫ر‬‫إج‬ ‫من‬ )‫(مقاطعته‬ ‫شفعه‬ ‫يتم‬ ‫أو‬ ،)ً‫ا‬‫طوع‬ " ‫ار‬‫و‬‫الد‬ ‫يط‬‫ر‬‫الش‬Round Robin Scheduling"-‫المعالج‬ ‫تنفيذه(يترك‬ ‫ينتهي‬ ‫حتى‬ ‫التنفيذ‬ ‫حال‬ ‫في‬ ‫يبقى‬ ‫النيسب‬ ‫الزمنية‬ ‫حصته‬ ‫تنتهي‬ ‫أو‬ ،‫أعلى‬ ‫أولوية‬ ‫ذو‬ ‫آخر‬ ‫اء‬‫ر‬‫إج‬ ‫من‬ )‫(مقاطعته‬ ‫شفعه‬ ‫يتم‬ ‫أو‬ ،)ً‫ا‬‫طوع‬"Slice". " )‫متباعدة(متقطعة‬ ‫جدولة‬Sporadic Scheduling"–‫حص‬ ‫استهلك‬ ‫النيسب‬ ‫إذا‬ ،‫للنيسب‬ ‫الزمنية‬ ‫الحصة‬ ‫يحدد‬‫ته‬ ‫بقيمة‬ ‫تقل‬ ‫أولويته‬ ‫الزمنية‬1‫عند‬ ‫األولوية‬ ‫بمستوى‬ ‫يحتفظ‬ ‫النيسب‬ .‫األصلية‬ ‫أولويته‬ ‫إلى‬ ‫يعود‬ ‫النيسب‬ ‫مد‬‫ج‬ ‫ذا‬‫ا‬‫و‬ ، .‫االستكمال‬ ‫وقت‬ ‫إلى‬ ‫وصوله‬ 8.:‫النيسب‬ ‫حاالت‬ ‫التالي‬ ‫الحاالت‬ ‫لديه‬ ‫السادس‬ ‫الجيل‬ ‫الحقيقي‬ ‫الزمن‬ ‫تشغيل‬ ‫نظام‬ ،‫المتضمنة‬ ‫النياسب‬‫و‬ ‫امنات‬‫ز‬‫الم‬ ‫من‬ ‫ايد‬‫ز‬‫المت‬ ‫العدد‬ ‫بسبب‬:‫ة‬ Fig.2 thread states
  • 10. 9 RealTimeSystems|6/2/2015 ‫التنفيذ‬"Running":" ‫ية‬‫ز‬‫المرك‬ ‫المعالجة‬ ‫وحدة‬ ‫يستخدم‬ ‫النيسب‬CPU‫في‬ ‫متعددة‬ ‫نياسب‬ ‫هناك‬ ‫يكون‬ ‫أن‬ ‫ويمكن‬ ،" .‫الحالة‬ ‫هذه‬ " ‫ية‬‫ز‬‫الجهو‬Ready:"‫الوقت‬ ‫في‬ ‫المعالج‬ ‫على‬ ‫تستحوذ‬ ‫ال‬ ‫لكنها‬ ‫ية‬‫ز‬‫المرك‬ ‫المعالجة‬ ‫وحدة‬ ‫على‬ ‫للتنفيذ‬ ‫ة‬‫ز‬‫جاه‬ .‫الحالي‬ ‫مجمد‬-" ‫إرسال‬Receive-Blocked:".‫مرسلة‬ ‫رسالة‬ ‫على‬ ‫النيسب‬ ‫تجميد‬ ‫تم‬ ‫مجمد‬-" ‫استقبال‬Send-Blocked:".‫مستقبلة‬ ‫رسالة‬ ‫على‬ ‫النيسب‬ ‫تجميد‬ ‫تم‬ " ‫متوقف‬Stopped." SEM-Blocked:‫السيمافور‬ ‫بانتظار‬ ‫النيسب‬"Semaphore." " ‫الموت‬ ‫حالة‬Dead State:".‫ثانية‬ ‫ية‬‫ز‬‫الجهو‬ ‫وضع‬ ‫إلى‬ ‫العودة‬ ‫يستطيع‬ ‫ال‬ ‫النيسب‬ SIGsuspended-Blocked":"‫عملية‬ ‫يستدعي‬ ‫النيسب‬)(sigsuspend.‫ة‬‫ر‬‫اإلشا‬ ‫سينتظر‬ ‫ثم‬ ،
  • 11. 10 RealTimeSystems|6/2/2015 SIGWaitInfo-state":"‫عملية‬ ‫يستدعي‬ ‫النيسب‬)(sigwaitinfo‫ة‬‫ر‬‫اإلشا‬ ‫ينتظر‬ ‫ثم‬ ،ً‫ا‬‫أيض‬. NANOSsleep":"‫العملية‬ ‫باستدعاء‬ ‫الزمن‬ ‫من‬ ‫ة‬‫ر‬‫قصي‬ ‫ة‬‫ر‬‫لفت‬ ‫النيسب‬ ‫تعليق‬ ‫يتم‬)(nanosleep،‫انتهاء‬ ‫حتى‬ .‫الوقت‬ Mutex state or the CONDVA":".‫بالمتابعة‬ ‫الظروف‬ ‫له‬ ‫تسمح‬ ‫حتى‬ ‫الحالة‬ ‫هذه‬ ‫في‬ ‫النيسب‬ ‫سيبقى‬ ‫التسجيل‬JOIN":"‫ال‬ ‫استدعاء‬ ‫النيسب‬ ‫يستطيع‬‫عملية‬)(pthread_join.‫االبن‬ ‫النيسب‬ ‫انتهاء‬ ‫لحين‬ ، INTR":"‫كا‬ ‫إذا‬‫حالة‬ ‫في‬ ‫يبقى‬ ‫أن‬ ‫يستطيع‬ ،‫مقاطعة‬ ‫ينتظر‬ ‫النيسب‬ ‫ن‬INTR.‫المقاطعة‬ ‫تأتي‬ ‫حتى‬ ‫يستخدم‬Neutrino‫نموذج‬‫نيسب‬POSIX،‫ال‬‫ذي‬‫ي‬‫عرف‬‫اإل‬‫اء‬‫ر‬‫ج‬‫بأنها‬‫تنفذ‬ ‫التي‬ ‫النياسب‬ ‫من‬ )‫األقل‬ ‫على‬ ‫احد‬‫و‬(‫مجموعة‬. ‫يمكن‬‫اعتبار‬‫النيسب‬‫ا‬‫األصغر‬ ‫لوحدة‬‫عمليتي‬ ‫في‬‫الجدولة‬‫التنفيذ‬‫و‬‫في‬‫النوية‬)‫ة‬‫ر‬‫المصغ‬ ‫اة‬‫و‬‫(الن‬.ً‫ا‬‫اعتماد‬‫على‬‫طبيعة‬،‫التطبيق‬ ‫النياسب‬‫يمكن‬‫تنفذ‬ ‫أن‬‫بشكل‬‫مستقل‬‫دون‬‫الحاجة‬‫لالتصال‬‫بين‬‫ال‬‫ارزميات‬‫و‬‫خ‬‫أو‬‫أنها‬‫قد‬‫تحتاج‬‫إلى‬‫امن‬‫ز‬‫ت‬‫مشدد‬.‫وللمساعدة‬‫في‬ ‫هذا‬‫االتصال‬،‫امن‬‫ز‬‫الت‬‫و‬‫يوفر‬Neutrino‫من‬ ‫العديد‬IPC"".‫امن‬‫ز‬‫الت‬ ‫وخدمات‬ 4.:‫امنة‬‫ز‬‫للم‬ ‫المقدمة‬ ‫التسهيالت‬ ‫يوفر‬NeutrinoQNX‫تسهيالت‬‫امن‬‫ز‬‫الت‬‫على‬‫مستوى‬‫النيسب‬،‫بعضها‬‫مفيدة‬‫بين‬‫المتضمنة‬ ‫النياسب‬‫في‬‫اءات‬‫ر‬‫إج‬‫مختلفة‬. ‫وتشمل‬‫خدمات‬‫ال‬‫امنة‬‫ز‬‫م‬: .Mutexes, Condvars, Barriers, Sleepon locks, semaphores, etc ‫ويتم‬‫استخدام‬Mutex(‫قفل‬‫اإلقصاء‬‫المتبادل‬)‫لضمان‬‫وصول‬‫مخصص‬‫إلى‬‫البيانات‬‫المشتركة‬‫بين‬‫النياسب‬.‫وعادة‬‫ما‬‫يتم‬ ‫المشتركة‬ ‫البيانات‬ ‫مع‬ ‫يتعامل‬ ‫الذي‬ ‫الكود‬ ‫حول‬ ‫ه‬‫ر‬‫ي‬‫ر‬‫وتح‬ ‫قفله‬.‫فقط‬‫نيسب‬‫احد‬‫و‬‫يمكن‬‫أن‬‫ال‬ ‫عليه‬ ‫يقفل‬Mutex‫من‬ ‫وقت‬ ‫أي‬ ‫في‬ ‫األوقات‬.‫دخول‬ ‫تحاول‬ ‫التي‬ ‫النياسب‬Mutex‫ح‬ ‫تجميدها‬ ‫سيتم‬ ‫مقفل‬‫يحوي‬ ‫الذي‬ ‫الكود‬ ‫من‬ ‫النيسب‬ ‫ج‬‫ويخر‬ ً‫ال‬‫مقف‬ ‫غير‬ ‫يصبح‬ ‫تى‬ ‫المشترك‬ ‫المصدر‬.‫اءات‬‫ر‬‫اإلج‬‫تكتسب‬Mutex‫على‬-‫أساس‬‫األولوية‬. ‫أقفال‬‫ئ‬‫القار‬/‫الكاتب‬: ‫وتستخدم‬‫هذه‬‫األقفال‬‫عندما‬‫يتكون‬‫نمط‬‫الوصول‬‫ا‬ ‫من‬‫لعديد‬‫من‬‫التي‬ ‫النياسب‬‫أ‬‫ر‬‫تق‬،‫البيانات‬‫ونيسب‬‫احد‬‫و‬‫على‬‫األكثر‬‫ل‬‫كتابة‬ ‫البيانات‬.‫هذ‬‫ه‬‫األقفال‬‫أكثر‬ ‫مكلفة‬‫من‬Mutexes،‫ولكن‬‫ها‬‫مفيدة‬‫لهذا‬‫ع‬‫النو‬‫من‬‫نمط‬‫الوصول‬‫إلى‬‫البيانات‬.‫عندما‬‫يسأل‬‫نيسب‬ ‫لتأمين‬)‫(قفل‬‫لل‬،‫كتابة‬‫ي‬‫تم‬‫رفض‬‫الطلب‬‫حتى‬‫تحرر‬‫كل‬‫نياسب‬‫اءة‬‫ر‬‫الق‬‫الحالية‬‫أقفال‬‫اءتهم‬‫ر‬‫ق‬.‫قفل‬‫الكتابة‬‫يعمل‬‫على‬‫أساس‬ ‫األولوية‬-‫ولكن‬‫االعتب‬ ‫بعين‬ ‫يأخذ‬ ‫ال‬ ‫اءة‬‫ر‬‫الق‬ ‫قفل‬‫ار‬‫األولوية‬.
  • 12. 11 RealTimeSystems|6/2/2015 11.:‫الخاتمة‬ QNX Neutrino‫هو‬‫نظام‬‫تشغيل‬‫مثالي‬‫لتطبيقات‬‫الزمن‬‫الحقيقي‬‫كما‬‫يمكن‬‫توسيعه‬‫من‬‫األحجام‬‫ة‬‫ر‬‫الصغي‬ً‫ا‬‫جد‬‫إلى‬‫شبكة‬ ‫اسعة‬‫و‬‫تخدم‬‫مئات‬‫المستخدمين‬.‫ويقدم‬‫ات‬‫ر‬‫قد‬API-POSIX‫القياسية‬‫لذلك‬‫ليس‬‫هناك‬‫حاجة‬‫للتخلي‬‫عن‬‫المعايير‬‫من‬‫أجل‬ ‫تحقيق‬‫نظام‬‫صغير‬.QNX Neutrino‫مرن‬‫بشكل‬‫ملحوظ‬.‫تم‬‫تصميم‬‫ه‬‫ألنظمة‬‫الزمن‬‫الحقيقي‬‫ذات‬‫المهام‬‫جة‬‫الحر‬.‫جميع‬ ‫وحدات‬‫التشغيل‬‫امج‬‫ر‬‫وب‬‫تشغيل‬‫الجهاز‬‫تنفذ‬‫اءات‬‫ر‬‫كإج‬،‫منفصلة‬‫ة‬‫ر‬‫الذاك‬ ‫ة‬‫ر‬‫إدا‬ ‫وحدة‬ ‫من‬ ‫محمية‬MMU.‫هذه‬‫ال‬‫ية‬‫ر‬‫معما‬‫ال‬‫توفر‬ ‫فقط‬‫استثنائية‬‫التسامح‬‫مع‬،‫الخطأ‬‫ولكن‬‫ت‬‫قلل‬‫بشكل‬‫كبير‬‫من‬‫الوقت‬‫الال‬‫زم‬‫ل‬‫لنموذج‬،‫األولي‬‫و‬‫اال‬،‫ختبار‬‫ودمج‬‫وتكاملية‬‫تطبيقات‬ ‫جديدة‬‫في‬.‫ة‬‫ر‬‫السيا‬ :‫اجع‬‫ر‬‫الم‬ SVU-ISE-RT Course: Dr.Ahmad Wabbi QNX software systems Ltd (2001). “QNX OS VERSION 6”. URL:http://www.qnx.com/developer/docs/qnx_6.1_docs/neutrino/sys_arch/ph oton.html Fig.1 “QNX microkernel”. URL: http://www.qnx.com/developer/docs/qnx_4.25_docs/qnx4/sysarch/intro.html Fig.2 “Thread states” (2003). URL: http://www.qnx.com/developer/docs/momentics621_docs/neutrino/sys_arch/k ernel.html#THREADSANDPRO