Tofauti Muhimu – Upangaji Madhubuti dhidi ya Uratibu Usio preemptive katika OS
Mchakato ni mpango unaotekelezwa. Kompyuta inapaswa kufanya kazi nyingi kwa wakati mmoja. Kwa hivyo, CPU inapaswa kupata michakato na kuitekeleza. Wakati mwingine ni muhimu kutekeleza michakato fulani kuliko michakato mingine. Wakati huo, mchakato wa kukimbia umeingiliwa, na CPU imetengwa kwa mchakato mpya. Baada ya kazi kukamilika, CPU inarudishwa kwa mchakato uliopita. Ratiba kulingana na utaratibu huu inajulikana kama ratiba ya mapema. Ikiwa mchakato unaoendelea, hauwezi kukatizwa na ni lazima kutekeleza mchakato unaoendesha, basi inajulikana kama upangaji usio wa preemptive. Makala haya yanajadili tofauti kati ya ratiba ya mapema na isiyo ya preemptive katika mfumo wa uendeshaji. Ratiba ya mapema ni utaratibu wa kuratibu mchakato ambao mchakato ambao unaweza kuingiliwa na mchakato mwingine katikati ya utekelezaji wake. Ratiba isiyo ya preemptive ni utaratibu wa kuratibu mchakato ambao mchakato mmoja huanza kutekeleza tu baada ya mchakato wa awali kukamilika. Hiyo ndiyo tofauti kuu kati ya Ratiba ya Kutangulia na Isiyo ya Kutarajia katika Mfumo wa Uendeshaji.
Kuratibu Mapema ni nini katika Mfumo wa Uendeshaji?
Upangaji Raundi wa Robin ni mfano wa upangaji wa mapema. Kila mchakato hupata kiasi kidogo cha wakati wa CPU. Kawaida ni milliseconds 10 hadi 100. Kitengo hiki kidogo cha data pia kinajulikana kama quantum ya wakati. Baada ya muda huu kupita, mchakato unatanguliwa na kuongezwa hadi mwisho wa foleni iliyo tayari. Fikiria kuwa kuna michakato 4 kama P1, P2, P3 na P4. Nyakati za kupasuka kwa CPU katika milisekunde ni kama ifuatavyo. Kiasi cha wakati ni 20.
Kielelezo 01: Mfano wa Upangaji wa Raundi ya Robin
Mchakato wa P1 utaendelea hadi 20. Imesalia 33ms nyingine. Kisha P2 inatekeleza. Kwa vile muda wa saa ni 20 na muda unaohitajika P2 ni 17ms, P2 itatekeleza kwa 17ms. Kwa hivyo, mchakato wa P2 umekamilika. Kisha nafasi inatolewa kwa P3. Itatekelezwa kwa 20ms. Iliyobaki ni 48ms. Kisha P4 itafanya kwa 20ms. Ina 4ms kukamilisha mchakato wa jumla. Tena, P1 itatekeleza kwa 20ms. Ina 13ms nyingine kukamilisha mchakato. Mabadiliko yanatolewa kwa P3. Itatekeleza kwa 20ms, na ina 28ms nyingine kumaliza kabisa. P4 inatekeleza. Ina 4ms tu. Kwa hiyo, P4 inakamilisha utekelezaji. P2 na P4 tayari wamemaliza. Michakato iliyobaki ni P1 na P3. Nafasi imepewa P3. Ilikuwa na 13ms kukamilisha, kwa hivyo inakamilika. Sasa mchakato pekee uliobaki ni P3. Ina 28ms kukamilisha. Kwa hivyo P3 itaendesha kwa 20ms. Iliyobaki ni 8ms. Michakato mingine yote tayari imekamilika kutekeleza. Kwa hivyo, tena 8ms iliyobaki ya P3 itatekelezwa. Vile vile, kila mchakato hupata nafasi ya kutekeleza.
Kuratibu Bila Kutarajia ni nini katika Mfumo wa Uendeshaji?
Upangaji wa First Come First Served (FCFS) unaweza kuchukuliwa kama mfano wa upangaji usio wa lazima. Mchakato unaoomba kwanza hugawiwa CPU kwanza. Ratiba hii inadhibitiwa kwa urahisi na foleni ya First In First Out (FIFO). Ikiwa kuna michakato ilikuja kwa mpangilio kama P1, P2 na P3, basi nafasi hutolewa kwanza kwa P1. Baada ya kukamilika, P2 itafanya. Wakati P2 itakamilika, P3 itafanya. Chukulia kuwa kuna michakato 3 kama P1, P2 na P3 yenye nyakati za kupasuka kwa CPU katika milisekunde kama ifuatavyo.
Kielelezo 02: Mfano wa Upangaji wa FCFS
Kulingana na yaliyo hapo juu, P1 itatekeleza. Mara tu ikiwa imekamilika, mchakato wa P2 unatekelezwa kwa 3ms. Sasa mchakato uliobaki ni P3. Kisha itatekeleza. Wakati wa kusubiri kwa P1 ni sifuri. Mchakato P2 ulilazimika kusubiri 24ms, na mchakato wa P3 ulilazimika kungoja 27ms. Ikiwa michakato ilifika kwa mpangilio P2, P3 na P1 basi P2 itakamilisha kwanza. P3 inayofuata itakamilika, na hatimaye, P1 itakamilika.
Je, Kuna Ufanano Gani Kati ya Upangaji wa Kutangulia na Usio Tamaa katika Mfumo wa Uendeshaji?
Upangaji wa Madhumuni na Usio wa Kutarajia katika Mfumo wa Uendeshaji ni njia za kuratibu michakato katika kompyuta
Kuna tofauti gani kati ya Upangaji wa Kutangulia na Upangaji Usio wa Tahadhari katika Mfumo wa Uendeshaji?
Upangaji wa Madhubuti dhidi ya Uratibu Usio wa Kutabiri katika OS |
|
Ratiba ya awali ni utaratibu wa kuratibu wa mchakato ambapo mchakato unaweza kukatizwa na mchakato mwingine katikati ya utekelezaji wake. | Upangaji usio wa preemptive ni utaratibu wa kuratibu wa mchakato ambapo mchakato mmoja huanza tu utekelezaji baada ya mchakato wa awali kuisha. |
Kukatiza Mchakato | |
Katika kuratibu mapema, michakato inaweza kukatizwa. | Katika kuratibu bila kutarajia, michakato inaweza kukatizwa. |
Matumizi ya CPU | |
Katika kuratibu mapema, matumizi ya CPU ni ya juu kuliko uratibu usio wa lazima. | Katika kuratibu bila kutarajia, matumizi ya CPU ni ya chini zaidi ikilinganishwa na upangaji wa mapema. |
Kubadilika | |
Ratiba ya mapema inaweza kunyumbulika. | Kupanga ratiba bila kutarajia si rahisi. |
Muhtasari – Upangaji Madhubuti dhidi ya Uratibu Usio preemptive katika OS
Kuna michakato mingi inayoendeshwa kwenye kompyuta. Wakati kila mchakato unatekelezwa, CPU imetengwa kwa mchakato huo maalum. Wakati mwingine, ni muhimu kusimamisha utekelezaji wa mchakato wa sasa na kutoa kipaumbele kwa mchakato mwingine. Michakato ya kuratibu inaweza kuwa ya mapema au isiyo ya mapema. Ratiba ya mapema ni utaratibu wa kuratibu mchakato ambao mchakato unaweza kuingiliwa na mchakato mwingine katikati ya utekelezaji wake. Ratiba isiyo ya preemptive ni utaratibu wa kuratibu mchakato ingawa ni mchakato gani huanza kutekelezwa tu baada ya mchakato wa hapo awali kuisha. Hii ndiyo tofauti kati ya Upangaji wa Kutangulia na Upangaji Usio wa Kutarajia katika Mfumo wa Uendeshaji.
Pakua PDF ya Upangaji Madhubuti dhidi ya Uratibu Usio Preemptive katika OS
Unaweza kupakua toleo la PDF la makala haya na uitumie kwa madhumuni ya nje ya mtandao kulingana na dokezo la manukuu. Tafadhali pakua toleo la PDF hapa: Tofauti Kati ya Upangaji Madhubuti na Usio wa Kutayarisha katika OS