Labaratoriya ishi 9.
Mavzu: Bogʼlanishlarni yaratish texnologiyalari.
Ishdan maqsad: Talabalarga bog’lanishlarni yaratishda Rate Monotonic rejalashtirish jarayonini o’rgatish.
Qisqacha nazariy ma’lumotlar
Rate Monotonik rejalashtirish algoritmi oddiy qoida bo'lib, vaqt oralig'iga ko'ra turli vazifalarga ustuvorliklarni belgilaydi. Ya'ni, eng kichik muddatga ega bo'lgan vazifa eng yuqori ustuvorlikka ega bo'ladi va eng uzoq vaqtga ega bo'lgan vazifa eng past ustuvorlikka ega bo'ladi. Vazifaning vaqt davri o'zgarmasligi sababli, uning ustuvorligi vaqt o'tishi bilan o'zgarmasligi sababli, monotonik stavka qat'iy ustuvorlik algoritmidir. Ustuvorliklar ijro boshlanishidan oldin hal qilinadi va ular qo'shimcha vaqtni o'zgartirmaydi.
Rate monotonik rejalashtirish Algoritmi ustunlik printsipi asosida ishlaydi. Ma'lum bir protsessorda ustunlik yuqoriroq vazifani bajarishdan pastroq vazifani bloklaganida sodir bo'ladi. Ushbu blokirovka ma'lum vazifalar to'plamidagi turli vazifalarning ustuvorlik darajasi tufayli yuzaga keladi. tezlik monotonik - bu oldingi algoritm bo'lib, agar bajarilish paytida qisqaroq muddatga ega bo'lgan vazifa kelsa, u yuqoriroq ustuvorlikka ega bo'ladi va hozirda bajarilayotgan vazifalarni bloklashi yoki oldini olishi mumkin. RMda ustuvorliklar vaqt davriga qarab belgilanadi. Vazifaning ustuvorligi uning taymer davriga teskari proportsionaldir. Vaqt muddati eng past bo'lgan vazifa eng yuqori ustuvorlikka ega va eng yuqori muddatga ega bo'lgan vazifa eng past ustuvorlikka ega bo'ladi. Berilgan vazifa, agar u quyidagi tenglamani qondirsa, tezlikni monotonik rejalashtirish algoritmi bo'yicha rejalashtirilgan:
bu erda n - vazifalar to'plamidagi vazifalar soni.
Misol uchun, bizda quyidagi uchta vazifadan iborat vazifalar to'plami mavjud
Vazifalar
|
Chiqarish vaqti (ri)
|
Bajarish vaqti (Ci)
|
Yakuniy muddat (Di)
|
Vaqt davri (Ti)
|
T1
|
0
|
0,5
|
3
|
3
|
T2
|
0
|
1
|
4
|
4
|
T3
|
0
|
2
|
6
|
6
|
Jadval 1. Vazifalar to'plami
U = 0,5/3 +1/4 +2/6 = 0,167+ 0,25 + 0,333 = 0,75
Protsessordan foydalanish 1 yoki 100% dan kam bo'lganligi sababli, vazifalar to'plamini rejalashtirish mumkin va u yuqoridagi monotonik rejalashtirish algoritmining tenglamasini ham qondiradi.
1-jadvalda berilgan topshiriqlar to'plami va RMni rejalashtirish 1-rasmda keltirilgan. Yuqoridagi tushuntirish quyidagicha:
RM rejalashtirish algoritmiga ko'ra, qisqaroq muddatga ega bo'lgan vazifa yuqori ustuvorlikka ega, shuning uchun T1 yuqori ustuvorlikka ega, T2 oraliq ustuvorlikka ega va T3 eng past ustuvorlikka ega. t=0 da barcha vazifalar chiqariladi. Endi T1 eng yuqori ustuvorlikka ega, shuning uchun u t = 0,5 gacha birinchi bo'lib bajariladi.
T=0,5 da T2 vazifasi T3 ga qaraganda yuqoriroq ustuvorlikka ega, shuning uchun u t=1,5 gacha bir martalik birliklar uchun birinchi bo'lib bajariladi. Uni tugatgandan so'ng tizimda faqat bitta vazifa qoladi, ya'ni T3, shuning uchun u o'z bajarilishini boshlaydi va t=3 gacha bajaradi.
T=3 da T1 chiqadi, chunki u T3 dan yuqoriroq ustuvorlikka ega, shuning uchun u T3 ni oldini oladi yoki bloklaydi va uni t=3,5 gacha bajarishni boshlaydi. Shundan so'ng T3 ning qolgan qismi ishlaydi.
T=4 da T2 uni chiqaradi va bajarishni yakunlaydi, chunki hozirda tizimda hech qanday vazifa bajarilmaydi.
T=6 da T1 ham, T3 ham bir vaqtning o'zida chiqariladi, lekin T1 qisqaroq davr tufayli yuqoriroq ustuvorlikka ega, shuning uchun u T3 ni oldindan oladi va t = 6,5 gacha ishlaydi, shundan keyin T3 ishlay boshlaydi va t = 8 gacha ishlaydi.
T=8 da T2 T3 dan yuqoriroq ustuvorlikka ega, shuning uchun u T3 ni oldini oladi va uning bajarilishini boshlaydi.
t=9 da T1 yana chiqariladi va u T3 ni oldindan o'tkazadi va birinchi bo'lib bajaradi va t=9,5 da T3 qolgan qismini bajaradi. Xuddi shunday, ijro davom etmoqda.
Do'stlaringiz bilan baham: |