RTOS nedir? Bare-metal programlamadan farkı nedir?
Cevap
Bare-metal yaklaşımında tek bir ana döngü ve kesmeler vardır; zamanlama ve önceliklendirme tamamen geliştiricinin elindedir. Basit sistemler için yeterli ve hafiftir.
RTOS (Real-Time Operating System), işi bağımsız görevlere (task) böler ve öncelik tabanlı, kesintili (preemptive) bir zamanlayıcı ile çalıştırır. Gerçek zamanlı olması hızlı olması değil, zamanında ve öngörülebilir (deterministik) tepki vermesi demektir.
RTOS ile gelenler:
- Görev öncelikleri ve zamanlayıcı
- Senkronizasyon: semafor, mutex, kuyruk, olay bayrakları
- Zamanlayıcılar ve gecikmeler
Dikkat edilmesi gereken sorunlar: öncelik tersinmesi (priority inversion, çözüm: priority inheritance), deadlock, her görev için yığın (stack) boyutunun doğru belirlenmesi. Örnekler: FreeRTOS, Zephyr, ThreadX.
Bu konuda başka bir soru biliyor musun?
Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.