داشتم درمورد سیستمعاملهای بلادرنگ میخوندم و چیزایی که فهمیدم رو اینجا میخوام به اشتراک بذارم، کلا از اول کلیت کانال این بود که همینکارو بکنم :))
سیستمعامل بلادرنگ، همون RTOS، یه سیستمعامله که کارش اینه که برنامهها و واکنشها رو دقیقا سر وقت اجرا کنه. یعنی وقتی یه سنسور یا یه سختافزار یه سیگنال میفرسته، این سیستم تضمین میکنه که جوابش رو تو همون لحظه بده. فرقش با لینوکس یا ویندوز اینه که اونجا هیچ تضمینی نیست؛ برنامهها ممکنه زود یا دیر اجرا بشن، ولی تو RTOS زمانبندی قطعی و پیشبینیشده داریم.
این موضوع مخصوصا تو سیستمهای حساس به زمان خیلی مهمه. مثلا کنترل یه موتور تو یه ربات صنعتی، سیستم ترمز تو یه ماشین، پهپاد یا هواپیما، یا حتی دستگاههای پزشکی مثل ضربانساز قلب. اگه حتی یه میلیثانیه تأخیر بیفته، ممکنه کل سیستم خراب بشه یا فاجعه بیفته.
سیستمعاملهای بلادرنگ دو نوع اصلی دارن.
یه نوع سختریلم تایم داره که اگه موعد زمانی رعایت نشه، سیستم ممکنه کاملا از کار بیفته. یه نوع نرمریلم تایم هم هست که کمی تأخیر قابل تحمله، مثلا تو پردازش صدا یا ویدیو، سیستم یه کمی کند میشه ولی از کار نمیافته. ویژگی مهم RTOS اینه که همه چیز پیشبینیشده و قطعی اجرا میشه، کارها اولویتبندی دارن و حتی اگه یه برنامه قفل کنه، بقیه وظایف درست اجرا میشن. این سیستمها معمولا سبک هستن و میتونن روی سختافزارهای کمحجم مثل میکروکنترلرها و بوردهای امبدد راحت کار کنن.
چند نمونه معروفش FreeRTOS هست که خیلی سبک و متنبازه و روی بوردهایی مثل ESP32 یا STM32 کار میکنه. Zephyr هم متنبازه و بیشتر برای دستگاههای اینترنت اشیا استفاده میشه. VxWorks یه RTOS تجاریه که تو هوافضا و صنایع دفاع کاربرد داره. لینوکس هم نسخههایی مثل RTLinux یا با پچ PREEMPT_RT داره که قابلیت ریلتایم اضافه میکنن بهش.
حالا بیشتر رو فردا مینویسم الان ساعت ۲ شبه :)).
@SohrabContents
Post #809
126
Forwarded from sohrab::stdout (Sohrab)