Bu foydalanuvchining bajarilayotgan (ishlayotgan) dasturi. Operatsion tizimlar ishlash vaqtida dasturlar sinfining ko’p sondagisini bajaradi: paketli topshiriqlar


Download 340.3 Kb.
bet4/8
Sana09.06.2023
Hajmi340.3 Kb.
#1472419
1   2   3   4   5   6   7   8
Bog'liq
Jarayon va topshiriqlarni rejalashtirish va dispetcherlash

Jarayonlarni boshqarish bloki (Process Control Block – PCB) – har bir jarayon bilan bog'liq quyidagi ma'lumotlarni o'z ichiga olgan, jarayonni boshqarish uchun OT tomonidan ishlatiladigan tizimli ma'lumotlar tuzilmasi:
Jarayon holati
Buyruq hisoblagichining joriy qiymati (jarayonning bajarilishi davom etishida qo’llaniladi);
Protsessor registrlari qiymatlari (bu ham jarayonni qayta tiklash uchun qo’llaniladi);
Protsessorning dispetcherlash uchun ma’lumot (jarayon stekiga ko’rsatkich, jarayon raqami);
Xotirani boshqarish uchun ma’lumot (jarayon xotira maydoni chegarasi);
Statistik ma’lumotlar (jarayon bajarilishining umumiy vaqti, bajarilishi uchun talab qilingan vaqt qoldig’i, kiritish-chiqarish vaqtining yig’indisi va boshq.);
Kiritish-chiqarish haqidagi ma’lumotlar (ochiq fayllar ro’yxati).
Bitta jarayondan boshqasiga o’tish
Operatsion tizim, jarayonlarni boshqarishda, ularning birma-bir navbati bilan bajarilishini ta'minlaydi. Ushbu vazifani OT rejalashtiruvchisi hal qiladi.
Sxemada ikkita P0 va P1 jarayonlar tasvirlangan. P0 jarayonda uzilish yoki tizimli chaqiruv bo’lgan vaqtda operatsion tizim uning holatini PCBga saqlaydi va protsessor P1 jarayonga o’tadi (xuddi shunday P1 jarayonni qayta ishlaydi). Jarayonlarning bajarilish davri va jarayonlardan har biriga o’tish ko’rsatilgan.
Jarayonlarni boshqarishni rejalashtirishga bog’liq navbatlar
Insonlar kabi har bir jarayonning butun umri navbatda o’tadi. OT jarayonlarni boshqarish uchun quyidagi navbatlarni tashkil qiladi:
Topshiriqlar navbati (job queue) – tizimdagi barcha jarayonlar to’plamini saqlaydi. Har bir yangi jarayon unga kiradi va tizimda qolish davrida unda qoladi.
Tayyor jarayonlar navbati (ready queue) – asosiy xotiradagi barcha bajarilishga tayyor bo'lgan jarayonlar to'plamini o'z ichiga oladi va o’zgartiriladigan navbat. Bu navbat tizim bajarilishiga imkon beradigan har bir yangi jarayonni, shuningdek, kiritish-chiqarish yoki kutilgan hodisa sodir bo’lganidan keyingi har qanday jarayonni o’z ichiga oladi.

Rejalashtiruvchi va jarayonlar xususiyatlari. Har bir rejalashtiruvchi hra bir jarayon kabi o’zining hatti-harakatlari bilan alohida xususiyatlarga ega.
Qisqa muddatli rejalashtiruvchi tez-tez chaqiriladi, hech bo’lmaganda protsessorning navbatdagi kvant vaqtining buzilishidan oldin. Shuning uchun ham bu juda tez bo’lishi va iloji boricha samarali bajarilishi lozim. Bunday bo’lmasligi mumkin emas, masalan, ushbu rejalashtiruvchining ishlash vaqti kvant vaqtning o’zi bilan taqqoslanadigan bo’lsa – qo’shimcha xarajatlar (resurslar) juda katta bo’lib ketadi.
Uzoq muddatli rejalashtiruvchilar nisbatan kamdan-kam chaqiriladi, chunki tizim tezkor jarayonni tayyor jarayonlar navbatiga o’tkazish to’g’risida qaror qabul qilmaydi. Shuning uchun, u nisbatan sekin ishlashi mumkin, samarali tatbiq etilmaydi.
Ammo, umuman tizimning asosiy vazifasi iloji boricha ko'proq jarayonlarni saqlab qolishdir. Aynan uzoq muddatli rejalashtiruvchilar vaqt birligi ichida tizim xizmat ko’rsatish lozim bo’lgan jarayonlar soni - multidasturlash darajasini (koeffitsientini) aniqlab beradi.
Jarayonlarnining o’zi rejalashtirish nuqtai nazaridan o’zini turlicha tutishi mumkin. Jarayonlar quyidagicha bo’ladi:
Kiritish-chiqarishga yo’naltirilgan (I/O-bound) – hisoblashlarga nisbatan kiritish-chiqarishga ko’p vaqt yo’qotadigan jarayonlar. Bunday jarayonlar protsessorning ko’plab qisqa kvant vaqtini sarflaydi.
Protsessorni ishlatishga yo’naltirilgan (CPU-bound) – asosiy vaqtini hisoblashlarga sarflaydigan jarayonlar. Bunday jarayonlar protsessorning juda kichik uzoq muddatli kvand vaqtini talab qiladi.
Kontekstni almashtirish
Protsessor boshqa jarayonga almashganda, tizim, oldingi jarayoning holatini saqlab qolgan holda, yangi jarayon uchun saqlangan holatni yuklab olishi kerak. Tizimning bunday harakati kontekstni almashtirish (context switch) deb ataladi.
Tayyor jarayonlar navbatidagi har bir jarayon qachondir protsessorga o’tadi va bajariladi. Bajarilish vaqtida bajarilishning to’xtatilishiga quyidagi holatlar sabab bo’lishi mumkin: sinxron kiritish-chiqarishga so’rov, jarayonga ajratilgan kvant vaqtning buzilishi, uzilish yoki qismjarayonning hosil bo’lishi. Oxirgi holat asosiy tushuntirishlarni talab qiladi.
Klassik UNIX sxemasida, tizimli fork chaqiruvida qismjarayonlarning hosil qilinishida qismjarayonlar uchun yangi virtual xotira maydoni yaratiladi, unga asosiy (ota) jarayonning xotira mazmuni nusxalanadi. Shundan so’ng ota jarayon protsessorni qismjarayonga bo’shatib beradi. Jarayonlarni parallelashtirish strategiyalari haqida keyingi ma’ruzalarda to’xtalamiz.
Jarayonlarni rejalashtirishni bajaruvchi rejalashtiruvchi
Operatsion tizimlarda jarayonlarni rejalashtirish bir nechta rejalashtiruvchilar tomonidan amalga oshiriladi. Ularning har biri o’ziga xos chaqiruv davriyligiga va o’zining aniq yechishi mumkin bo’lgan masalalari bor.
Uzoq muddatli rejalashtiruvchi (topshiriqlarni rejalashtiruvchilar) – qaysi jarayonlarni tayyor jarayonlar navbatiga qo’yish zarurligini aniqlaydi.
Qisqa muddatli rejalashtiruvchi (protsessorni rejalashtiruvchi) – qaysi jarayon navbatda bajarilishi kerak va qaysi jarayon protsessorga uzatilishi zarurligini aniqlaydi.
Tizimda vaqtni taqsimlash tartibini (rejimini) tatbiq etish uchun tizimga jarayonlarni chiqarish (diskka) va joylashtirish (xotiraga) rejalashtiruvchilarini qo’shish mumkin, bular qaysi foydalanuvchi jarayonlari xotiraga yuklanishi yoki diskka chiqarilishi zarurligini aniqlaydi.



Download 340.3 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling