أنظمة تشغيل في الوقت الفعلي لوحدات التحكم الدقيقة. نظام تشغيل للميكروكونترولر. أنظمة تشغيل في الوقت الحقيقي

يوفر نظام RTOS للمطور إطار عمل يتم من خلاله بناء وتنظيم عناصر النظام. في الواقع ، تمتد الفوائد إلى ما هو أبعد بكثير من جانب الوقت الفعلي - حتى بالنسبة للأنظمة التي لا تحتاج إليها ، لأن البرنامج يمكن أن يكون منظمًا بشكل أفضل إذا كان يعتمد على نظام RTOS.


يحل تكامل RTOS العديد من المشكلات التي يمكن أن تنشأ مع برنامج التطبيق ، لأنه يوفر إمكانية تعدد المهام ويسمح بتقسيم التطبيق إلى أجزاء أصغر (مهام). تحصل كل مهمة على أولويتها الخاصة بناءً على أهميتها ، وتضمن الجدولة التفضيلية أن يقوم المتحكم الدقيق بتنفيذ المهمة ذات الأولوية القصوى بين المهام الجاهزة للتشغيل. في معظم الحالات ، لا تؤثر إضافة مهمة ذات أولوية أقل على سرعة استجابة النظام للمهام ذات الأولوية الأعلى.


حاليًا ، تتوفر وحدات التحكم الدقيقة المستندة إلى ARM و Cortex بنفس سعر وحدات التحكم الدقيقة 8 أو 16 بت. تعني قابلية التشغيل الإضافية التي يقدمونها أن النظام المخصص سيعمل بشكل جيد لتشغيل RTOS. بالإضافة إلى ذلك ، فإن التعقيد المتزايد لتطبيقات اليوم سيجعل من الممكن الاستفادة من المشاريع التي تستخدم RTOS. ومع ذلك ، يجب أن يحتوي المتحكم الدقيق على ما لا يقل عن 16 إلى 32 كيلوبايت من ذاكرة فلاش أو ذاكرة البرنامج من أجل استخدام RTOS بنجاح.

اختيار RTOS

إن نظام RTOS هو مجرد مكون واحد من مكونات نظام إيكولوجي كامل للتطوير. يثير هذا التعقيد المرتبط بمجموعة واسعة من المنتجات المتاحة أسئلة جديدة. يجب أن يقرر المطور أي نظام RTOS مثالي للتطبيق وأي RTOS مثالي لوحدة التحكم الدقيقة. أود أن أتمنى في كلتا الحالتين - نفس الشيء. بالإضافة إلى ذلك ، يجب على المطور تحديد أدوات البرمجة وتصحيح الأخطاء التي تعمل بشكل جيد ضمن RTOS المختار. لحسن الحظ ، أصبحت مصادر المعلومات الموضوعية متاحة الآن للمطورين لمساعدتهم على الإجابة على الأسئلة أعلاه.

أولوية عالية / أولوية منخفضة

تتمثل المشكلة الرئيسية في أنظمة الوقت الفعلي في الوقت المطلوب للاستجابة للمقاطعة وتشغيل رمز المستخدم (المهمة) للتعامل مع المقاطعة. تُعرف الأنظمة التي لا تستخدم نظام RTOS بأنظمة الأولوية العالية / المنخفضة (المقدمة / الخلفية) وتعمل كما هو موضح في الشكل 1. يستدعي التطبيق الوحدات النمطية لإجراء العمليات المطلوبة: يتم تنفيذ الوحدات ذات الأولوية المنخفضة بالتتابع في حلقة البرنامج الرئيسية ، وتعالج المقاطعات الأحداث غير المتزامنة باستخدام ذا أهيمة عليا. ستقوم التطبيقات النموذجية بالكثير من الاقتراع وسيصبح البرنامج فوضويًا مع نمو التطبيق. بدون نظام RTOS ، يتعين عليك أيضًا تنفيذ ملفات خدمات مفيدةمثل التأخيرات الزمنية والموقتات اللازمة لتنفيذ برنامج مع أجهزة حالة متعددة.

الصورة 1

تعدد المهام

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

عندما يحتاج النظام إلى بدء مهمة أخرى بسبب حدوث حدث أكثر أهمية ، يتم تخزين المحتويات الحالية لسجلات المعالج كجزء من المهمة الحالية. تتم استعادة سياق مهمة جديدة (أكثر أهمية) إلى حالتها السابقة قبل تنفيذ التعليمات البرمجية الخاصة بها. يتم تنفيذ هذا الإجراء عن طريق ما يسمى تبديل السياق أو مفتاح تبديل المهام. يتم تخزين الجزء العلوي الحالي من المكدس لكل مهمة ، إلى جانب المعلومات الأخرى ، في بنية بيانات تسمى كتلة التحكم في المهام ، والتي تتم إدارتها بواسطة RTOS.

تخطيط

يتم تحديد الترتيب الذي يتم به تنفيذ المهام بواسطة المجدول أو المرسل. هناك نوعان من المبرمجين: تعاوني (غير استباقي) ووقائي (استباقي).


في الجدولة التعاونية ، تتفاعل المهام (تتعاون) مع بعضها البعض للسيطرة على المعالج: عندما تقوم مهمة بإصدار المعالج ، تقوم النواة بتنفيذ الكود للمهمة التالية الأكثر أهمية والجاهزة للتشغيل. لا تزال الأحداث غير المتزامنة تتم معالجتها بواسطة معالجات المقاطعة التي يمكنها جعل مهمة ذات أولوية عالية جاهزة للتشغيل ، لكن معالج المقاطعة يعود دائمًا إلى المهمة التي تمت مقاطعتها. مهمة جديدةذات الأولوية الأعلى ، لن تتمكن من الوصول إلى المعالج إلا عندما تقوم المهمة الحالية بإطلاق المعالج طواعية ، كما هو موضح في الشكل 2.

الشكل 2

عندما ، في المجدول الوقائي الموضح في الشكل 3 ، يجعل حدثًا أو معالج مقاطعة مهمة ذات أولوية أعلى جاهزة للتشغيل ، يتم تعليق المهمة الحالية فورًا وتحصل المهمة ذات الأولوية الأعلى على إمكانية الوصول إلى المعالج. تستخدم معظم أنظمة الوقت الفعلي جدولة وقائية لأنها أسرع من النوى التعاونية.

الشكل 3

موارد

تتمثل الميزة الواضحة لاستخدام نظام RTOS في أنه يقلل من الوقت اللازم للتسويق (الوقت اللازم للتسويق) ، لأنه يبسط عملية التطوير دون استهلاك عدد كبيرموارد المعالج. على سبيل المثال ، يستخدم برنامج uC / OS-II من Micrium 6 إلى 24 كيلو بايت فقط من ذاكرة البرنامج و 1 إلى 8 كيلو بايت من ذاكرة البيانات على أجهزة ARM. في الأنظمة الأساسية الأصغر حجمًا من 8 إلى 16 بت ، تكون التكلفة أقل - فقط من 4 إلى 16 كيلوبايت من ذاكرة البرنامج.


تتمتع RTOS ، كقاعدة عامة ، بخاصية حتمية ، أي أنه يمكن إكمال مجموعة معينة من المهام الحرجة بالكامل عن طريق تاريخ الاستحقاق. يتم تجنب الاقتراع عن طريق تنفيذ المهام فقط عند وقوع الأحداث. المهام التي تنتظر الحدث لا تستهلك دورات CPU.

المزايا التجارية لـ RTOS

تستخدم بعض الشركات نظام RTOS الخاص بها ، لكن قد تعاني أنظمتها من نقص في الوثائق والاختبارات المكثفة. عادةً لا يمكن نقل ملفات RTOS المسجلة الملكية إلى معالجات أخرى وغالبًا ما يكون كودها غير مثالي. والأسوأ من ذلك ، إذا ترك المصمم الشركة الشركة ، فقد يصبح النظام غير قابل للاستمرار.


يتم استخدام نظام RTOS التجاري في مئات ، إن لم يكن الآلاف ، من المشاريع ويستند إلى كود مثبت لضمان عمله. Micrium's uC / OS-II معتمد من FAA / FDA / IEC ، مما يجعله مناسبًا للاستخدام في إلكترونيات الطيران ، والطبية ، وأنواع أخرى من التطبيقات التي تتطلب الأمان. حتى إذا كان الجهاز لا يحتاج إلى موثوقية RTOS المعتمدة من إلكترونيات الطيران ، فلا يزال من الجيد معرفة أن نظام RTOS قد تم اختباره على نطاق واسع. كما أن uC / OS-II متنقل بدرجة كبيرة ، حيث يعمل على أكثر من 45 معالجًا مختلفًا. يمكن نقل (نقل) رمز التطبيق بسهولة من بنية 8 بت إلى 32 بت وحتى إلى DSP. يتم تزويد المستخدم بالدعم الشامل والتوثيق.


معظم الخدمات التي قد يحتاجها التطبيق مدمجة بالفعل في RTOS. فيما بينها:

إدارة الوقت - تأخير الوقت والموقتات
- إدارة المهام - إنشاء ، حذف ، إيقاف مؤقت ، استئناف
- استبعاد متبادل
- إرسال الرسائل
- إرسال الإشارات

يتم التأكيد على فوائد استخدام نظام RTOS من خلال توفر مجموعة كاملة من المكونات المضمنة. برمجة(برنامج) بالإضافة إلى البرامج الوسيطة بما في ذلك TCP / IP stack و USB stack و CANbus stack و UART و أنظمة الملفاتوواجهة مستخدم رسومية. بالطبع ، قد تتطلب بعض المكونات أداءً أكثر من المعالجات منخفضة الجودة.

هناك اتجاهان في صناعة RTOS التجارية يجعلان البدء أسهل. يتم الآن بيع العديد من أنظمة RTOS ، بما في ذلك uC / OS-II ، على أساس بدون حقوق ملكية ، وهو أكثر ربحية من استخدام RTOS الذي يتطلب مدفوعات إتاوات مستمرة. في كثير من الأحيان ، يتم تضمين RTOS ، في حالة الترخيص ، في العديد من مجموعات البداية (مجموعات بداية MCU).

خاتمة

تعد RTOS أداة لا تقدر بثمن تعمل على تبسيط تطوير معظم التطبيقات المضمنة - في الوقت الفعلي أم لا - وتسمح بإضافة ميزات جديدة دون الحاجة إلى إجراء تغييرات كبيرة على البرنامج. نظرًا لانخفاض عبء النظام ، فإن استخدام RTOS له ما يبرره حاليًا في العديد من الأنظمة المدمجة الصغيرة 8 بت و 16 بت ، وكذلك الأنظمة ذات المعالجات 32 بت أو أعلى.

يا هبر!
سأتحدث اليوم عن شيء مثير للاهتمام مثل نظام التشغيل في الوقت الفعلي (RTOS). لست متأكدًا من أنه سيكون ممتعًا للمبرمجين ذوي الخبرة ، لكنني أعتقد أن المبتدئين سيحبونه.

ما هو نظام RTOS؟

إذا نظرنا إلى ويكيبيديا ، فسنرى ما يصل إلى 4 تعريفات.
باختصار ، RTOS هو نظام تشغيل يتفاعل مع الأحداث الخارجية في فترة زمنية معينة. من هنا يمكننا فهم الغرض الرئيسي من RTOS - الأجهزة التي تتطلب استجابة سريعة للأحداث (ومع ذلك ، لا تخلط بأي حال من الأحوال بين تشغيل RTOS والمقاطعات).

لماذا نحتاجه؟

هناك عدة أسباب لذلك.
أولاً ، يدعم نظام RTOS تعدد المهام وأولويات عملية الإشارة والمزيد.
ثانيًا ، إنه خفيف جدًا ولا يتطلب أي موارد تقريبًا.
ثالثًا ، يمكننا الحصول على كل ما سبق على أي جهاز تقريبًا (على سبيل المثال ، يعمل FreeRTOS حتى على 8 بت AtMega).
ورابعًا: مجرد اللعب والاستمتاع.

نظرة عامة على 3 RTOS معروفة.

انتباه: ما يلي هو رأيي الشخصي.
FreeRTOS
أحد أشهر أنظمة تشغيل RTOS اليوم. استدار إلى كمية ضخمة من الحديد. موقع رسمي.
الايجابيات
1) مجاني
2) استدار بكمية كبيرة من الحديد
3) وظائف قوية
4) توجد مكتبات متنوعة: رسومات ، إنترنت والمزيد.
5) وثائق جيدة.
سلبيات
1) عملية معقدة نوعًا ما للانتقال إلى أجهزة جديدة.

الخلاصة: هذا نظام RTOS احترافي حقًا مع توثيق جيد. سيكون من الجيد للمبتدئين إذا كان هناك بالفعل منفذ على أجهزته.

KeilRTX
حتى وقت قريب ، كان نظام RTOS تجاريًا ، لكنه أصبح مفتوحًا مؤخرًا. يعمل فقط على هندسة الذراع. موقع رسمي.
الايجابيات
1) مجاني
2) استدار بسهولة إلى أجهزة جديدة (ضمن بنية الذراع).
3) توجد مكتبات متنوعة: رسومات ، إنترنت والمزيد.
سلبيات
1) يكاد يكون العمل معها مستحيلاً
2) وظائف مخفضة قليلاً
3) يتم دعم الذراع فقط.
4) (في خبرة شخصية) يخسر للعديد من RTOS من حيث السرعة.
الخلاصة: مثالية للمبتدئين والمشاريع الصغيرة.
uc / نظام التشغيل
نظام RTOS التجاري القوي. موقع إلكتروني .
الايجابيات
1) عدد هائل من الوظائف والمكتبات.
2) يدعم الكثير من الحديد
سلبيات
1) تجاري.
2) صعب الاستخدام.

الخلاصة: وصفها بـ RTOS للمبتدئين يمكن أن يكون امتدادًا.

RTOS أخرى مثيرة للاهتمام

RTLinux RTOS مبني على نظام Linux العادي.
QNX RTOS مبني على نظام Unix.

ميزات التطوير باستخدام نظام RTOS

حسنًا ، عليك أولاً أن تفهم ما يلي: إن نظام RTOS ليس نظامًا Windows. لا يمكن تثبيته. هذا النظام يجمع ببساطة مع برنامجك.
عند كتابة البرامج باستخدام نظام RTOS ، لا يتم استخدام الوظائف بالمعنى المعتاد. بدلاً من الوظائف ، يتم استخدام العمليات (أو المهام) ، والفرق هو أن العمليات ، على عكس الوظائف ، هي حلقات لا نهاية لهاولا تنتهي أبدًا (ما لم يقتله أحد أو هو بنفسه - أي يفرغه من الذاكرة).
إذا تم تمكين العديد من العمليات ، يقوم نظام RTOS بتبديلها ، وإصدار وقت الجهاز والموارد بدوره. هذا هو المكان الذي ينشأ فيه مفهوم أولوية العملية - إذا احتاجت عمليتان إلى وقت الآلة في نفس الوقت ، فإن RTOS ستعطيه للعملية ذات الأولوية الأعلى.
يحتوي نظام RTOS على وظائف تأخير خاصة - بحيث لا يختفي الوقت عبثًا أثناء تأخير عملية واحدة ، يتم تنفيذ الثانية.
الآن دعنا نتحدث عن شيء مثل الإشارة - هذا شيء يتحكم في وصول العملية إلى موارد التطبيق. لكل مورد هناك علامة - عندما تحتاج العملية إلى مورد - تأخذها وتستخدم هذا المورد. إذا لم يكن هناك رمز مميز ، فسيتعين على العملية الانتظار حتى يتم إرجاعها. دعني أعطيك مثالاً: العمليات المختلفة ترسل المعلومات عبر UART واحد. إذا لم يكن هناك إشارة ، فسيرسلون البايتات بدورهم وينتج عن ذلك ارتباك. وهكذا أخذت العملية الأولى العلامة على UART ، وأرسلت رسالة وأعطتها إلى الثانية (وهكذا إلى ما لا نهاية).

مكتبات RTOS إضافية.

غالبًا ما تقدم RTOS مكتبات متنوعة للعمل مع ، على سبيل المثال ، الرسومات والويب وما إلى ذلك. إنها مريحة حقًا ويجب ألا تتردد في استخدامها. ومع ذلك ، تذكر أنه بدون RTOS التي كتبت من أجلها ، فلن تعمل.
وهنا بعض الأمثلة:
بالنسبة لـ RTX

RTOS ماكسهو نظام تشغيل روسي مجاني في الوقت الحقيقي لأنظمة متماسكة متعددة العوامل.

تجسد MAKS الوظائف الكلاسيكية لأنظمة التشغيل من هذا النوعولديه عدد من المزايا التي يمكن أن تسرع بشكل كبير من تطوير البرامج المضمنة عند إنشاء أجهزة جديدة تعتمد على ميكروكنترولر. تتجلى مزايا نظام التشغيل الجديد بشكل واضح في تنظيم تفاعل العديد من الأجهزة.


يشمل نظام RTOS MAX:
  • نواة RTOS تعمل بكامل طاقتها.
  • مجموعة كاملة من أكواد المصدر.
  • توثيق.
  • التطبيقات التجريبية.
تحقق من المشروع على جيثب: https://github.com/AstroSoft-MIR/macs-rtos

أو تحميل نسخة مستقرةكجزء من بيئة تطوير MACS Master القائمة على Eclipse


من إنتاج STMicroelectronics (بما في ذلك التصميمات الجاهزة لمجموعة تصحيح الأخطاء STM32F429I-DISCO).

دعم أدوات التطوير


إكليبس + دول مجلس التعاون الخليجي.

نظام RTOS MAX هو:

المجدول:

  • إنشاء وحذف ديناميكي للمهام ،
  • دعم أساليب تعدد المهام الوقائية والتعاونية ،
  • اختيار وضع تنفيذ المهمة - مميز أو غير مميز.
كائنات التزامن:
  • الإشارات الثنائية والعد ،
  • كائنات متكررة وغير متكررة مع دعم الميراث ذي الأولوية ،
  • أحداث
  • قوائم انتظار الرسائل.
استخدام حماية ذاكرة الجهاز:
  • لحماية مكدس العملية من الفائض ،
  • لحماية الذاكرة في العنوان صفر ،
  • لحماية المنافذ الطرفية من الوصول غير المتميز.
مقاطعة التعامل في مهام المستخدم:
  • تفعيل معالجات المهام المخصصة من معالج مقاطعة عام محدد مسبقًا لا يتطلب تكوينًا إضافيًا ،
  • القدرة على تعيين معالجات مهام متعددة لمقاطعة واحدة ،
  • إدارة تسلسل المعالجة من خلال أولويات مهام المعالجة.
التنميط:
  • قياس وقت تنفيذ أقسام الكود من نقطة إلى نقطة أو في نطاق متغير تلقائي ،
  • فرصة ضبط تلقائي(تحسين دقة القياس عن طريق حساب التأخيرات في عملها) ،
  • تشكيل إحصائيات القياس مع تجميع الأقسام حسب الأقسام (إجمالي وقت التنفيذ لجميع الأقسام مع وبدون تعشيش ، الحد الأدنى / المتوسط ​​/ الحد الأقصى لوقت تنفيذ القسم ، الانحراف المعياري).
آلية الذاكرة المشتركة على مستوى الجهاز (الذاكرة المشتركة):
  • تزامن سياق المهام بين الأجهزة ،
  • المراسلة داخل مجموعة أجهزة.

يتم استخدام الأجهزة التي يتم التحكم فيها بواسطة ميكروكنترولر لحل مجموعة واسعة من المهام. تعتبر RTOS MAKS منصة عالمية لتطوير التطبيقات المضمنة ، ويرتبط نطاقها بمدى ملاءمة استخدام وحدات التحكم الدقيقة في مهمة معينة.


الروبوتات ، الطائرات بدون طيار
  • نظام التحكم

    يتم تثبيت إلكترونيات التحكم مباشرة على الروبوت نفسه وتنفذ خوارزميات تسمح له بحل المهمة.

  • نظام القياس عن بعد

    يوفر الاتصال بين الروبوت والمحطة البعيدة ، ويسمح للمشغل بتلقي معلومات حول حالة الروبوت وإرسال الأوامر.


  • نظام تحديد المواقع

    إضافي الأجهزة الخارجيةالسماح للروبوتات بالتنقل في الداخل والخارج ، والعثور على طريقهم إلى وجهتهم وإلى المحطات الأساسية.

أنظمة المنزل الذكي
  • التحكم في الطاقة والإضاءة

    ضمان عدم انقطاع التيار الكهربائي للمبنى ، والتحكم في استهلاك الطاقة ، والتشغيل / الإيقاف التلقائي للإضاءة حسب وجود الأشخاص في الغرفة والتحكم في مستوى الإضاءة (ضبط سطوع الضوء في أوقات مختلفة من اليوم) .


  • التحكم في المناخ

    يتم الحفاظ على مناخ محلي مريح في الغرفة (تنظيم درجة الحرارة والرطوبة والتهوية وتنقية الهواء) اعتمادًا على تفضيلات المستخدم ، ووجود الأشخاص في الغرفة ، وكذلك العوامل الخارجية (الطقس ، الوقت من اليوم) .


  • أنظمة المراقبة والأمن

    المراقبة بالفيديو والتحكم في الوصول إلى المباني ، ومراقبة الأحداث التي تهدد أمن المنزل (السطو ، والحريق ، وتسرب المياه) والإخطار التلقائي للمالكين والخدمات ذات الصلة (الأمن ، والإطفاء) بشأنهم.

الأجهزة الإلكترونية الاستهلاكية والأجهزة المنزلية


مع تطور التكنولوجيا ، أصبحت الأجهزة المنزلية أكثر وظيفية وملاءمة للاستخدام. على سبيل المثال ، في الوقت الحالي ، يتمتع المستهلك بالفعل بإمكانية الوصول إلى المعدات التي يتم التحكم فيها مركزيًا من هاتف ذكي أو جهاز لوحي بدلاً من أجهزة التحكم عن بُعد المنفصلة. تتطلب التكنولوجيا "الذكية" اهتمامًا بشريًا أقل فأقل ، مما يسمح للمستخدم بتوفير الوقت والمال بشكل كبير (تقوم المكانس الكهربائية الروبوتية بالتنظيف بشكل مستقل ، وتتحكم وظائف التشغيل المتأخر والإيقاف التلقائي في وقت تشغيل الجهاز وبالتالي تحسين استهلاك الطاقة). تشير التقنيات المتطورة بسرعة لإنترنت الأشياء (إنترنت الأشياء ، إنترنت الأشياء) إلى استقلالية كاملة للأجهزة ، مما يخلق متطلبات عالية لحشو برامجهم ، ومن جانب مطوري هذه الأجهزة ، هناك اهتمام متزايد بأنظمة التشغيل التي تقدم بالفعل خدمات وبروتوكولات تفاعل خارج الصندوق ، مما يسمح بهذا الاستقلالية.


تفترض تقنيات إنترنت الأشياء استقلالية كاملة للأجهزة. هذا يخلق متطلبات عالية لحشو برامجهم. من جانب مطوري هذه الأجهزة ، هناك اهتمام متزايد بأنظمة التشغيل التي توفر بالفعل خدمات جاهزة وبروتوكولات تفاعل لضمان هذا الاستقلالية.


دعم شبكة
  • موثوقية الشبكة والتسامح مع الأخطاء

    ترتبط عُقد الشبكة ببعضها البعض ، وتشكل عددًا كبيرًا من الروابط. يمكن تشكيل عدة طرق مرورية بين العقد. إذا كانت هناك طرق زائدة عن الحاجة ، فلن يؤدي فشل إحدى العقد الوسيطة إلى تعطيل عمل الشبكة بالكامل. ستتم إعادة توجيه المعلومات ديناميكيًا إلى مسار آخر.


  • التنظيم الذاتي

    يتم تشكيل هيكل الشبكة تلقائيًا عندما يتم توصيل / فصل العقد. إذا لزم الأمر ، يمكن لكل عقدة الحصول بشكل مستقل على معلومات حول مدى توفر العقدة الوجهة وإنشاء أفضل مسار لتبادل البيانات.


  • زيادة نطاق الاتصال

    قد يكون لكل جهاز نطاق اتصال قصير. ومع ذلك ، فإن التوزيع الإقليمي للعديد من الأجهزة المتصلة ببعضها البعض يسمح بتغطية أكبر بكثير.

دعم تقنيات إنترنت الأشياء
  • التكوين الأمثل للنظام الموزع

    يتم تحديد موارد الأجهزة لكل جهاز نظام بناءً على الغرض الوظيفي الخاص به. ليست هناك حاجة لأجهزة كمبيوتر قوية لحل المهام البسيطة ، مثل تحديد الأشياء أو قياس المعلمات البيئية. يمكن تنفيذ هذه الوظائف في وحدات صغيرة قائمة بذاتها ، مما يقلل من تكلفة النظام الموزع.


  • تشغيل النظام المستقل

    من خلال التفاعل مع بعضها البعض ، تكون الأجهزة قادرة على اتخاذ القرارات وأداء المهام دون تدخل بشري ، مما يقلل من تكاليف صيانة النظام.


  • قابلية التوسع

      تعد إضافة الأجهزة وإزالتها من الشبكة عملية سهلة وتلقائية. ستقوم الشبكة "بمعرفة" الجهاز الذي ظهر فيه وكيفية استخدامه.

التطبيقات
  • مجسات ، مجسات ، محولات طاقة
  • المنزل الذكي ، أنظمة المدن الذكية
  • إنترنت الأشياء (إنترنت الأشياء ، إنترنت الأشياء)
  • الأتمتة الصناعية والتحكم
  • علم الروبوتات
  • معدات طبية
  • النقل بالسكك الحديدية
  • مستهلكى الكترونيات
  • نظم الاتصالات

نظام مضمن ، نظام مضمن(نظام اللغة الإنجليزية المضمن) متخصص نظام الكمبيوتر، حيث يتم عادةً تضمين الكمبيوتر نفسه في الجهاز الذي يتحكم فيه.

صفات:

  • استهلاك منخفض جدًا للطاقة ، في حدود 0.5 إلى 20 واط
  • أحجام صغيرة
  • غياب أنظمة كبيرةتبديد الحرارة (التبريد). غالبًا لا يتم تبريد وحدة المعالجة المركزية على الإطلاق أو يتم استخدام خافض حرارة صغير.
  • وحدة المعالجة المركزية و منطق النظام، بالإضافة إلى بعض الدوائر المتكاملة الأخرى ، غالبًا ما يتم دمجها على شريحة واحدة (System On Crystal = SOC)

يمكن أن يكون الأساس لبناء الأنظمة المدمجة هو لوحة واحدة أو شريحة واحدة ميكروكنترولر، وحدات المعالجة المركزية المتخصصة أو العالمية ، FPGAs. ميزة مثيرة للاهتمام لبعض أنواع الأنظمة المضمنة هي استخدام معالجات عائلة x86 قديمة نوعًا ما (على سبيل المثال ، i386 و i486 و Pentium) ونسخها نظرًا لانخفاض استهلاك الطاقة والتكلفة المنخفضة (حوالي 1-5 دولارات أمريكية). أيضًا ، تستخدم أنواع كثيرة من الأنظمة المضمنة وحدات المعالجة المركزية (CPU) ذات البنية ARM.

على هذه اللحظةينتج عدد كبير نسبيًا من الشركات (بما في ذلك في روسيا) أجهزة كمبيوتر أحادية اللوحة تعتمد على وحدات التحكم الدقيقة ووحدات المعالجة المركزية مع بنية RISC. فيما بينها Advantech، AAEON، Advanced Micro Peripherals (AMP)، Ampro Computers، Diamond Systems، iBASE، InnoDisk، Fastwel (Russia)، Lippert، Octagon Systems، RTD Embedded Technologies، Tri-M Systems - Engineering، SanDisk، STEC.تتضمن أمثلة الأنظمة المدمجة أجهزة الصراف الآلي وإلكترونيات الطيران وأجهزة المساعد الرقمي الشخصي وأجهزة الاتصالات السلكية واللاسلكية وما شابه ذلك.

تُستخدم بعض الأنظمة المدمجة بكميات كبيرة (على سبيل المثال ، أجهزة RFID). تعد الأنظمة المضمنة هدفًا جذابًا لمنشئي البرامج الضارة نظرًا لانتشارها وانعدام الأمان النسبي لها. تدريجيًا ، تظهر التعليمات البرمجية الخبيثة للأنظمة المدمجة (Cabir ، فيروس RFID) ؛ لحسن الحظ ، لا تزال هذه العملية تعيقها عدم تجانس الأجهزة المضمنة ، ونقص البرامج المهيمنة ، والوظائف المحدودة لبعض أنواع الأجهزة. من ناحية أخرى ، فإن مهمة شركات مكافحة الفيروسات والباحثين حماية الحاسوبمعقد أيضًا بسبب هذه الظروف ، فضلاً عن الطاقة المنخفضة للأنظمة المضمنة ، والتي لا تسمح في كثير من الأحيان باستخدام برامج مكافحة الفيروسات على نطاق واسع.

الشركات المصنعة الرئيسية لوحدات المعالجة المركزية للأنظمة المدمجة هي تقنيات VIA و Transmeta Corporation و Infineon Technologies.

أنظمة التشغيل للأنظمة المدمجة

تستخدم الأنظمة المضمنة o أنظمة التشغيل في الوقت الفعلي (RTOS).

نظام التشغيل في الوقت الفعلي هو نظام تشغيل يستجيب في أوقات يمكن التنبؤ بها للوقوع غير المتوقع للأحداث الخارجية. يُشار أحيانًا إلى أنظمة تشغيل RTOS على أنها أنظمة تفاعلية تعمل دائمًا. يتم تصنيفها في فئة RTOS بناءً على اعتبارات تسويقية ، وإذا تم تسمية برنامج تفاعلي "في الوقت الفعلي" ، فهذا يعني فقط أن الطلبات الواردة من المستخدم تتم معالجتها بتأخير غير محسوس للبشر. أحيانًا يتم تحديد مفهوم نظام الوقت الفعلي بـ "نظام سريع" ، ولكن هذا ليس صحيحًا دائمًا ، نظرًا لأنه ليس وقت تأخير رد فعل RTOS هو المهم ، ولكن هذه المرة كافية للتطبيق المعني و إنه مضمون.

في بعض الأحيان هناك أنظمة الوقت الحقيقي "الصعب" و "السهل". يضمن نظام التشغيل "الصعب" في الوقت الفعلي تنفيذ بعض الإجراءات خلال فترة زمنية معينة ، وكقاعدة عامة ، يتمكن نظام التشغيل "السهل" في الوقت الفعلي من تنفيذ الإجراءات خلال فترة زمنية معينة ، ولكنه لا يضمن ذلك تمامًا . معظم البرامج موجهة نحو الوقت الحقيقي.

تتميز هذه الأنظمة بما يلي:

  • وقت استجابة مضمون للأحداث الخارجية (الانقطاعات من المعدات) ؛
  • نظام فرعي صارم لجدولة العمليات (لا ينبغي مزاحمة المهام ذات الأولوية العالية بالمهام ذات الأولوية المنخفضة ، مع بعض الاستثناءات) ؛
  • زيادة متطلبات وقت رد الفعل للأحداث الخارجية أو التفاعل (تأخير استدعاء معالج المقاطعة لا يزيد عن عشرات الميكروثانية ، وتأخير تبديل المهام لا يزيد عن مئات الميكروثانية)

أحد الأمثلة الكلاسيكية على المهمة التي تتطلب نظام RTOS هو التحكم في روبوت يأخذ جزءًا من حزام ناقل. الجزء يتحرك والروبوت لديه فقط نافذة صغيرة من الوقت يمكنه التقاطها. إذا تأخر الوقت ، فلن يكون الجزء في القسم الصحيح من الناقل ، وبالتالي لن يتم العمل ، على الرغم من حقيقة أن الروبوت في المكان الصحيح. إذا وضع نفسه في وقت سابق ، فلن يكون لدى الجزء وقت للقيادة بعد ، وسيسد طريقه.
نظام التشغيل Windows CE (المعروف أيضًا باسم WinCE)هو متغير من نظام التشغيل مايكروسوفت ويندوزلأجهزة الكمبيوتر المحمولة والهواتف المحمولة والأنظمة المدمجة. لم يتم "تجريد" Windows CE نسخة ويندوزلأجهزة كمبيوتر سطح المكتب ويعتمد على نواة مختلفة تمامًا. العيوب الرئيسية للنظام هي الغياب التامضروري تطبيقات برمجية. يتم دعم معماريات x86 و MIPS و ARM ومعالجات Hitachi SuperH.

المنافسون الرئيسيون لـ WinCE هم VxWorks و eCos و OSE و QNX و LynxOS و Symbian OS و OS-9 ، بالإضافة إلى مشتقات Linux المختلفة (على سبيل المثال ، uClinux ) والأكثر شهرة ، بالم أو أس . تقوم بعض الشركات المصنعة للأجهزة أيضًا بإنشاء نظام خاص بهم.

تم تحسين Windows CE للأجهزة ذات الحد الأدنى من الذاكرة: نواة ويندوزيمكن تشغيل CE على 32 كيلو بايت من الذاكرة. مع واجهة مستخدم رسومية (GWES) لـ عمل ويندوزسيحتاج CE من 5 ميغابايت. الأجهزة في كثير من الأحيان لا تملك تخزين المكتبويمكن تصميمها كأجهزة "مغلقة" ، دون إمكانية التوسع من قبل المستخدم (على سبيل المثال ، يمكن أن يكون نظام التشغيل "صلبًا" في ذاكرة القراءة فقط). يفي Windows CE بتعريف نظام التشغيل في الوقت الفعلي.

تعتمد العديد من الأنظمة الأساسية على نظام التشغيل Windows CE ، بما في ذلك أجهزة الكمبيوتر المحمولة وأجهزة كمبيوتر الجيب وجيبت بي سي 2002 وجيبت بي سي 2003 وجيب بي سي 2003 SE وهاتف ذكي 2002 وهاتف ذكي 2003 وويندوز موبايل والعديد من الأجهزة الصناعية والأنظمة المدمجة. كان سيجا دريمكاست دعم Windowsم. لم يتم تضمين Windows CE نفسه في التسليم الأولي ، ولكن يمكن تشغيله على جهاز فك التشفير من قرص مضغوط. استفادت بعض الألعاب من هذه الميزة.

غالبًا ما يتم استخدام أسماء Windows CE و Windows Mobile و Pocket PC بالتبادل. هذا ليس صحيحا تماما. Windows CE 3.0 هو نظام تشغيل معياري يعمل كأساس لعدة فئات من الأجهزة. يمكن لأي مطور شراء مجموعة أدوات (Platform Builder) تحتوي على كل هذه المكونات والبرامج لبناء النظام الأساسي الخاص به. ومع ذلك ، فإن التطبيقات مثل Word Mobile / Pocket Word ليست جزءًا من مجموعة الأدوات هذه.

يُنظر إلى Windows Mobile على أنه مجموعة من الأنظمة الأساسية القائمة على Windows CE. حاليًا ، تتضمن هذه المجموعة الأنظمة الأساسية: كمبيوتر الجيب والهاتف الذكي ومركز الوسائط المحمول. كل منصة لها مجموعتها الخاصة مكونات Windows CE ، بالإضافة إلى مجموعتها الخاصة من الميزات والتطبيقات ذات الصلة.

نظام التشغيل Windows CE. netهو الاسم الرمزي للإصدار 4.2 من Windows CE.

نظام التشغيل Windows Embedded CE 6.0(الاسم الرمزي "Yamazaki") هو الإصدار السادس من نظام التشغيل Windows Embedded الذي يستهدف المؤسسات التي تصنع وحدات التحكم الصناعية وأجهزة الإلكترونيات الاستهلاكية. يحتوي Windows Embedded CE 6.0 على نواة مُعاد تصميمها بالكامل تدعم أكثر من 32000 عملية ، بزيادة من 32 بوصة الإصدارات السابقة. ارتفعت مساحة العنوان الظاهرية المخصصة للعمليات من 32 ميجابايت إلى 2 جيجابايت.

تم إصدار Windows Embedded CE 6.0 في 1 نوفمبر 2006.
تم إصدار Windows CE 6.0 R2 في 15 نوفمبر 2007.
Windows Embedded CE 6.0 هو أيضًا أساس Windows Mobile 7 (الاسم الرمزي "فوتون").

QNXنظام تشغيل في الوقت الحقيقي تجاري متوافق مع POSIX ومخصص بشكل أساسي للأنظمة المضمنة. يعتبر من أفضل تطبيقات مفهوم أنظمة تشغيل microkernel.

كيف نظام التشغيل microkernel، QNX يقوم على فكرة تشغيل الجزء الأكبر من مكوناته كمهام صغيرة تسمى الخدمات. وهذا ما يميزه عن الألباب التقليدية المتجانسة ، حيث يكون جوهر نظام التشغيل هو برنامج واحد كبير ، يتكون من عدد كبير من "الأجزاء" ، ولكل منها خصائصها الخاصة. يتيح استخدام microkernel في QNX للمستخدمين (المطورين) تعطيل أي وظيفة لا يحتاجونها دون تغيير النواة. بدلاً من ذلك ، لا يمكنك ببساطة تشغيل عملية معينة.

النظام صغير بما يكفي ليلائم قرصًا مرنًا واحدًا بالحد الأدنى ، ومع ذلك يعتبر سريعًا جدًا و "منتهي" بشكل صحيح (خالٍ من الأخطاء تقريبًا).

QNX نيوترينو، الذي تم إصداره في عام 2001 ، تم نقله إلى العديد من الأنظمة الأساسية وهو الآن قادر على العمل فعليًا على أي معالج حديث مستخدم في السوق المدمجة. من بين هذه المنصات هناك عائلات x86 و MIPS و PowerPC وعائلات المعالجات المتخصصة مثل SH-4 و ARM و StrongARM و xScale.

يتوفر إصدار للاستخدام غير التجاري للتنزيل على موقع الويب الخاص بالمطور.

LynxOS- نظام تشغيل في الوقت الفعلي شبيه بـ Unix مصمم للأنظمة المضمنة ، ومتوافق مع معايير POSIX ، وفي مؤخرامع نظام التشغيل GNU / Linux. يستخدم LynxOS بشكل أساسي في الطيران وأنظمة التحكم في العمليات الصناعية والاتصالات.

جوقةهو نظام تشغيل microkernel في الوقت الحقيقي مصمم للأنظمة المضمنة. في عام 1997 ، اشترت شركة Sun Microsystems أنظمة Chorus ، الشركة التي تقف وراء ChorusOS. في أغسطس 2002 ، أسس مؤسسو Chorus Systems شركة جديدة ، VirtualLogix ، وبدأوا في تطوير أنظمة مدمجة باستخدام Linux و ChorusOS.

نواةهو نظام تشغيل في الوقت الفعلي تم إنشاؤه بواسطة Accelerated Systems ، قسم الأنظمة المضمنة في Mentor Graphics ، لمنصات المعالجات المختلفة. منتشر في أجهزة فك التشفير التليفزيونية ، الهواتف المحمولةوغيرها من الأجهزة المحمولة والمحمولة. تستخدم شركة Garmin International Nucleus في وحدة GPS مصممة للطيران المدني.

OS-9هو نظام تشغيل متعدد المهام ومتعدد المستخدمين في الوقت الفعلي تم تطويره بواسطة شركة Microware Systems.
تستخدم للأنظمة التفاعلية والمدمجة. اليوم ، OS-9 مملوك لشركة RadiSys Corporation الواقعة في ولاية أوريغون (الولايات المتحدة الأمريكية).

VxWorksهو نظام تشغيل في الوقت الفعلي (RTOS) طورته شركة Wind River Systems (الولايات المتحدة الأمريكية).
مثل معظم أنظمة RTOS الأخرى ، يشتمل VxWorks على نواة متعددة المهام مع جدولة وقائية واستجابة سريعة للمقاطعات وأدوات المزامنة والاتصال بين العمليات ، بالإضافة إلى نظام ملفات ونظام فرعي للشبكة (مكدس بروتوكول TCP / IP). تتضمن الحزمة أدوات للترجمة المتقاطعة ومراقبة الأداء (WindView) وتصحيح الأخطاء الرمزي عن بُعد ومحاكاة مختلف المعالجات. بالإضافة إلى ذلك ، يتم توفير عدد كبير من حزم البروتوكولات المختلفة والأنظمة الفرعية للرسومات وما إلى ذلك من كل من Wind River Systems نفسها ومن أطراف ثالثة. تعد مجموعة الأنظمة الأساسية المضمنة التي تدعمها VxWorks واحدة من أكثر الأنظمة الأساسية شمولاً بين أنظمة تشغيل RTOS.

تم إنشاء أحدث إصدار من بيئة عمل Wind River Workbench (التي يتم شحنها مع الإصدار 6.x من VxWorks بالإضافة إلى 5.x) فوق بيئة Eclipse. كانت بيئة تطوير الملكية السابقة تسمى تورنادو.

الاستعمال:

  • مركبة استطلاع المريخ في مدار المريخ (باستخدام نظام VxWorks)
  • تستخدم مجسات Spirit و Opportunity ، بالإضافة إلى Mars Reconnaissance Orbiter ، VxWorks على منصة POWER. يستخدم النظام أيضًا في مهمات فضائية أخرى ، مثل Deep Impact.
  • مخطط للاستخدام في أحدث الطائرات بوينج 787.
  • معدات اتصال من العديد من الشركات (على سبيل المثال ، Nortel ، 3COM ، Alcatel ، إلخ).
  • Linksys WRT54G (الإصدار 5.6 ، ...) ، NetGear WGR614 (الإصدار 5 ، 6 ، 7)
  • بعض طابعات PostScript.
  • المعدات الطبية من شركة Siemens AG (على وجه الخصوص ، التصوير المقطعي بالرنين المغناطيسي).
  • أحدث أنظمة واجهة BMW iDrive

OS2000- نظام تشغيل في الوقت الحقيقي (RTOS) تم تطويره بواسطة NIISI RAS بأمر من وزارة الدفاع RF لمعالجات MIPS و Intel.
تم تصميم نظام التشغيل RT OS هذا لتطوير برامج للأنظمة (البرامج وأنظمة الأجهزة) التي تعمل في الوقت الحقيقي الصعب.
دعم الجهاز:

  • أجهزة شبكة Ethernet (بروتوكولات NFS و FTP و Telnet) ، بالنسبة لإصدار Intel ، يقتصر الدعم على بطاقات Realtek ISA و PCI والبطاقات المتوافقة مع NE2000.
  • أجهزة التخزين - المرنة و الأقراص الصلبة(أنظمة ملفات vfat و tar)

هناك دعم للنظام الفرعي الرسومي للعميل / الخادم لنظام X Window المستخدم في أنظمة Unix.