9-Ma’ruza. Jarayonlarni rejalashtirish algoritmlari va parametrlari. Semaforalar. Reja: Jarayon tushunchasi;
Jarayon holati;
Jarayonlarni boshqarish bloki;
Jarayonlarni boshqarishni rejalashtirish;
Jarayonlar ustida amallar.
Jarayon tushunchasi Jarayon (process) – bu foydalanuvchining bajarilayotgan (ishlayotgan) dasturi. Operatsion tizimlar ishlash vaqtida dasturlar sinfining ko’p sondagisini bajaradi: paketli topshiriqlar; vaqtni bo’lib olish rejimida foydalanuvchi dasturi, tizimli dasturlar va jarayonlar. Bir qancha o’xshash tushunchalar mavjud: foydalanuvchi dasturlarni xarakterlovchi dasturlar: jarayon (process), topshiriqlar (job), masalalar (task). Biroq, bu yerda ularning orasidagi farqni ajratib ko’rsatmaymiz: jarayonlarning o'ziga xos xususiyatlarini va ularni OTda boshqarishni yaxshiroq o’rganish uchun, ushbu atamalarni sinonim sifatida ko'rib chiqishimiz mumkin, chunki ko'plab OT haqidagi adabiyotlarda shunday shaklda ta’riflangan.
Jarayonning muhim jihati – bu ketma-ket bajarilishi shart bo’lgan hisoblash birligi hisoblanadi, ya’ni, har bir jarayon o’zining boshqaruv oqimlari (control flow) ketma-ketligiga ega – jarayon tomonidan bajariladigan buyruqlar ketma-ketligi. Jarayonlarning parallel bajarilishi bilan ko'plab katta vazifalar muvaffaqiyatli hal qilinmoqda, ammo bular haqida biroz keyingi mavzularda muhokama qilinadi.
Operatsion tizim tomonidan yaratilgan va boshqariladigan jarayon quyidagi asosiy ma'lumotlarni o'z ichiga oladi:
Buyruqlar hisoblagichi (program counter - PC) – joriy vaqtda bajarilayotgan jarayon buyrug'ining manzili, odatda maxsus apparat tizim registrida saqlanadi;
Stek (stack) – asosiy xotiraning rezident sohasi, jarayonni yaratishda operatsion tizim tomonidan ajratilgan asosiy protsessorning doimiy maydoni, bu jarayon protseduralarining mahalliy ma'lumotlarini, ularning parametrlarini (argumentlarini) va hisob-kitoblarni tashkil qilish uchun zarur bo'lgan o'zaro bog'liq ma'lumotlarni saqlaydi.