نظام رودوس التشغيلي
المميزات

جانب مهم من Rodos هو الوسيطة المتكاملة في الوقت الحقيقي. يوفر تطوير برنامج التحكم والحمولة في الجزء العلوي من البرامج الوسيطة الحد الأقصى من الوحدات النمطية اليوم. يمكن تطوير التطبيقات / الوحدات بشكل مستقل ومن السهل جداً تبادل الوحدات فيما بعد دون القلق بشأن الآثار الجانبية، لأن كل الوحدات يتم تغليفها ككتل بناء (BB) ويمكن الوصول إليها ويمكنها الوصول إلى الموارد الأخرى فقط عن طريق واجهات محددة بشكل جيد.
تم تطبيق Rodos كإطار عمل برمجي في ++C مع واجهة تطبيق موجهة للكائنات (API). يتم تنظيمها في طبقات:
الطبقة الدنيا (1) هي المسؤولة عن التحكم في أجهزة النظام المدمجة (HAL: طبقة تجريد الأجهزة).
الطبقة التالية (2) نواة: تدير الموارد المحلية والخيوط والوقت. على رأس النواة، لدينا الوسيطة
(الطبقة 3) التي تتيح التواصل بين BBs باستخدام بروتوكول البث المتعدد لمشترك الناشر. وعلى الجزء العلوي من البرنامج الوسيط، يمكن للمستخدم تنفيذ تطبيقاته
(الطبقة 4) كشبكة برامج موزعة تضم BBs بسيط. واجهة برمجة تطبيقات Building Blocks في الجزء العلوي من البرنامج الوسيط هي واجهة موجهة نحو الخدمة. تتفاعل BBs من خلال تقديم الخدمات إلى BBs الأخرى واستخدام الخدمات من BBs الأخرى.
كما ذكر من قبل، كان الغرض الأصلي من رودوس هو التحكم في الأقمار الصناعية. وقد تم تصميمه ليكون بمثابة عقول نظام Avionic ويقدم للمرة الأولى (2001) مفهوم NetworkCentric. تتكون آلة إلكترونيات الطيران الأساسية للشبكة المركزية من عدة مكونات متجانسة تعمل معاً لتنفيذ الحوسبة الموثوقة بطريقة بسيطة. في نظام NetworkCentric، لدينا شبكة برمجيات من BBs ومركبات ربط الشبكة (اتصالات لاسلكية) وأجهزة كمبيوتر داخل المركبات (الحافلات وروابط نقطة إلى نقطة)، وأجهزة ذكية (مرفقة بالحافلات)، وأجهزة بسيطة متصلة بأجهزة الكمبيوتر الأمامية. للتواصل مع (العقدة) الوحدات الخارجية، بما في ذلك الأجهزة ووحدات الحوسبة الأخرى، توفر كل عقدة بوابة إلى الشبكة وحول الأجهزة العديدة الموجودة في الشبكة (قد يتم ربط أجهزة IO Devs وعقد الحوسبة) بالنظام. تبادل الرسائل التي توفرها الوسيطة والبوابات غير متزامن، باستخدام بروتوكول الناشر-المشترك. لم يتم إنشاء مسارات اتصال ثابتة ويمكن إعادة تكوين النظام بسهولة في وقت التشغيل. على سبيل المثال، يمكن تشغيل عدة نسخ متماثلة من البرنامج نفسه في عقد مختلفة ونشر النتيجة باستخدام نفس الموضوع، دون معرفة بعضها البعض. يمكن للناخب الاشتراك في هذا الموضوع والتصويت على النتيجة الصحيحة. يمكن أن ينتقل التطبيق من عقدة إلى عقدة أو حتى إلى مركبات أخرى دون الحاجة إلى إعادة تكوين نظام الاتصالات. يوزع جوهر البرامج الوسيطة الرسائل محلياً فقط، ولكن باستخدام البوابات المدمجة إلى شبكة NetworkCentric، يمكن أن تصل الرسائل إلى أي عقدة وتطبيق في الشبكة. يشتمل الاتصال في النظام بأكمله على تطبيقات البرامج وعقد الحوسبة وحتى أجهزة الإدخال / الإخراج. يقوم الناشرون بنشر الرسائل في إطار موضوع معين. يحصل المشتركون (صفر، واحد أو أكثر) في موضوع معين على جميع الرسائل التي يتم نشرها تحت هذا الموضوع. كما ذكرنا من قبل، لا يوجد فرق في هذا الاتصال في أي عقدة (وحدة أو جهاز حوسبة) يعمل الناشر والمشتركون وما بعدها، فقد يكونون أي مزيج من مهام البرامج وأجهزة الأجهزة لإنشاء مسار نقل، حيث يجب على كل من الناشر والمشترك مشاركة نفس الموضوع. الموضوع هو زوج يتكون من نوع بيانات وعدد صحيح يمثل معرف الموضوع. يقوم كل من البرنامج الوسيط ومفتاح شبكة الأجهزة (يطلق عليهما رمز التبديل الوسيطة) بتفسير نفس بروتوكول الناشر / المشترك.
يمكّن Rodos المستخدم من كتابة تطبيقات في الوقت الفعلي لمختلف البنيات بطريقة سهلة وفعالة. أثناء التطوير، تم إيلاء اهتمام خاص لتنفيذ الميزات المختلفة لـ Rodos بطريقة بسيطة ومع ذلك. تم تجنب التعقيد غير الضروري لتزويد المستخدم بنظام مباشر ومرتّب بشكل واضح. Rodos يدعم الميزات النموذجية لأنظمة التشغيل في الوقت الحقيقي، مثل المواضيع والإشارات.
من بين الميزات الأخرى التي يقدمها Rodos:
وجوه المنحى C ++ في الواجهات.
تمهيد سريع جداً.
الوقت الحقيقي في الأولوية للسيطرة الوقائية multithreading.
إدارة الوقت (كنقطة مركزية).
التواصل الآمن والتزامن الآمن.
نشر الحدث.