Bosh sahifa > Ko'rgazma > Kontent

Haqiqiy vaqtda operatsion tizim. Interruptlar va scheduler

Mar 08, 2019

Uzluksiz ishlov beruvchi eng yuqori darajali vazifani bajarishdan to'sadi va real vaqtli operatsion tizimlar ish zarrachalaridagi kechikishni minimal darajada ushlab turish uchun yaratilganligi sababli, interrupt operatorlari odatda imkon qadar qisqa tutiladi. Chiqib ketish moslamasi, iloji bo'lsa, apparat bilan barcha shovqinlarni buzadi; Odatda, kerak bo'lgan barcha narsa, interruptni tanib olish yoki o'chirib qo'yish (interrupt operatori qaytib kelganida yana sodir bo'lmaydi) va ishni bajarish kerak bo'lgan vazifani xabardor qilishdir. Buni bir semaforni yuborish, bayroq o'rnatish yoki xabar yuborish orqali haydovchi ishini olib tashlash yo'li bilan amalga oshirish mumkin. Vaqt rejalashtiruvchisi odatda vazifani interruptni ishlov berish kontekstidan olib tashlash qobiliyatini ta'minlaydi.


OS operatsion tizimida ishlaydigan narsalar kataloglari, masalan, iplar, mutexes, xotira va boshqalar. Ushbu katalogga oid yangilanishlar qat'iy nazorat qilinishi kerak. Shu sababli, interrupt operatori OS funktsiyasini chaqirganda, dastur shu bilan shug'ullanayotgan paytda muammoli bo'lishi mumkin. O'chirish moslamasi orqali ishlaydigan OS funktsiyasi, ilovaning yangilanishi tufayli ob'ektlar bazasini barqaror holatda bo'lishi mumkin. Ushbu muammo bilan shug'ullanish uchun ikkita asosiy yondashuv mavjud: yagona arxitektura va segmentlangan arxitektura. Birlashtirilgan arxitekturani tatbiq qiluvchi RTOSlar ichki katalog yangilanayotganda to'xtatishni to'xtatish bilan muammoni hal qilishadi. Buning past tomoni shovqin kechikishining kuchayishi va interruptlarni yo'qotishidir. Segmentli arxitektura to'g'ridan-to'g'ri OS chaqiruvlarini amalga oshirmaydi, OS bilan bog'liq ishni alohida ishlovchilarga topshiradi. Ushbu ishlovchi har qanday ish zarrachasidan yuqori ustunlikka ega, ammo interruptlarni ishlovchilarga nisbatan pastroq qiladi. Ushbu arxitekturaning afzalligi shundaki, u kechikishni to'xtatish uchun juda kam davrlarni qo'shadi. Natijada, segmentli arxitekturani tatbiq qiladigan operatsion tizimlar yanada prognozlashadi va birlashgan arxitektura bilan solishtirganda yuqori kesish stavkalari bilan shug'ullanishadi.


Xuddi shunday tizimni boshqarish rejimi x 86 mos keluvchi apparat operatsion tizimiga nazoratni qaytarishdan oldin juda ko'p vaqt talab qilishi mumkin. X86 apparat uchun real vaqtda dasturiy ta'minotni yozish odatda noto'g'ri.