Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Okwu Mmalite nke Sistemụ Ọrụ

Hey Habr! Ọ ga-amasị m iwetara gị ntị usoro isiokwu-nsụgharị nke otu akwụkwọ na-atọ ụtọ n'uche m - OSTEP. Nke a ihe onwunwe na-atụle nnọọ miri emi ọrụ nke unix-dị ka sistemụ arụmọrụ, ya bụ, na-arụ ọrụ na usoro, dị iche iche schedulers, ebe nchekwa, na ndị ọzọ yiri components na-emejupụta a ọgbara ọhụrụ OS. Ị nwere ike ịhụ mbụ nke ihe niile ebe a ebe a. Biko mara na e mere ntụgharị asụsụ ahụ n'amaghị ama (n'efu), mana enwere m olileanya na m jigidere nkọwa izugbe.

Enwere ike ịchọta ọrụ ụlọ nyocha na isiokwu a ebe a:

Akụkụ ndị ọzọ:

Ị nwekwara ike lelee ọwa m na telegram =)

Okwu mmalite nke onye nhazi

Isi nsogbu ahụ: Otu esi emepụta amụma nhazi oge
Kedu ka ekwesịrị isi hazie usoro iwu nhazi ihe n'okpuru? Gịnị kwesịrị ịbụ isi echiche? Kedu metrik dị mkpa? Kedu usoro ndị bụ isi e ji mee ihe na usoro mgbakọ mbụ?

Echiche ibu ọrụ

Tupu anyị atụle amụma ndị nwere ike ime, ka anyị buru ụzọ mee ntakịrị ihe na-eme ka ọ dị mfe banyere usoro na-agba ọsọ na sistemụ, nke a na-akpọkọta ọnụ. ibu ọrụ. Ịkọwapụta oke ọrụ bụ akụkụ dị oke mkpa nke iwu ụlọ, ma ka ị na-amatakwu banyere ibu ọrụ, otú ahụ ka iwu ka ị nwere ike ide.

Ka anyị mee echiche ndị a banyere usoro na-agba ọsọ na usoro, mgbe ụfọdụ a na-akpọkwa ya ọrụ (ọrụ). Ihe fọrọ nke nta ka ọ bụrụ echiche ndị a niile abụghị eziokwu, mana ọ dị mkpa maka mmepe nke echiche.

  1. Ọrụ ọ bụla na-arụ ọrụ otu oge,
  2. A na-ahazi ọrụ niile n'otu oge,
  3. Ọrụ e kenyere na-arụ ọrụ ruo mgbe emechara ya.
  4. Ọrụ niile na-eji naanị CPU,
  5. A maara oge ịgba ọsọ nke ọrụ ọ bụla.

Usoro nhazi usoro

Na mgbakwunye na ụfọdụ echiche banyere ibu ahụ, a chọrọ ngwá ọrụ ọzọ maka iji atụnyere usoro nhazi usoro dị iche iche: nhazi nhazi. Otu metrik bụ naanị ụfọdụ ihe. Enwere ọtụtụ metrik enwere ike iji tụnyere ndị nhazi oge.

Dịka ọmụmaatụ, anyị ga-eji metrik akpọrọ oge ntụgharị (oge mgbanwe). A na-akọwa oge ntụgharị ọrụ dị ka ọdịiche dị n'etiti oge mmecha ọrụ na oge mbata ọrụ na usoro.

Tturnaround = Mmecha-Ọbịbịa

Ebe anyị chere na ọrụ niile rutere n'otu oge, mgbe ahụ Ta = 0 ma si otú a Tt = Tc. Uru a ga-agbanwe agbanwe mgbe anyị gbanwere echiche ndị dị n'elu.

metric ọzọ - ezi (ikpe ziri ezi, eziokwu). Nrụpụta na izi ezi na-abụkarị njirimara megidere na nhazi. Dịka ọmụmaatụ, onye nhazi oge nwere ike ịkwalite arụmọrụ, mana na ọnụ ahịa nke ichere ka ọrụ ndị ọzọ na-arụ ọrụ, si otú a na-ebelata izi ezi.

Nke mbụ na nke mbụ (FIFO)

Algọridim kachasị mkpa anyị nwere ike mejuputa bụ FIFO ma ọ bụ mbụ bata (na), nke mbụ ozi (out). Algọridim a nwere ọtụtụ uru: ọ dị mfe itinye ya na ọ dabara n'echiche anyị niile ma rụọ ọrụ ahụ nke ọma.

Ka anyị lee otu ihe atụ dị mfe. Ka anyị kwuo na edobere ọrụ atọ n'otu oge. Ma ka anyị chee na ọrụ A rutere ntakịrị oge karịa ndị ọzọ niile, ya mere, ọ ga-apụta na ndepụta igbu oge tupu ndị ọzọ, dị ka B metụtara C. Ka anyị chee na a ga-egbu onye ọ bụla n'ime ha maka 3 sekọnd. Kedu ihe ga-abụ nkezi oge iji rụchaa ọrụ ndị a na nke a?

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Site n'ịgụ ụkpụrụ - 10 + 20 + 30 na nkerisi site na 3, anyị na-enweta nkezi oge mmezu mmemme hà 20 sekọnd.

Ugbu a, ka anyị gbalịa ịgbanwe echiche anyị. Karịsịa, echiche 1 na ya mere anyị agaghịkwa eche na ọrụ ọ bụla na-ewe otu oge iji rụọ ọrụ. Kedu ka FIFO ga-esi eme oge a?

Dị ka ọ na-apụta, oge mmezu ọrụ dị iche iche nwere mmetụta na-adịghị mma na mmepụta nke FIFO algorithm. Ka anyị were na ọrụ A ga-ewe 100 sekọnd iji rụchaa, ebe B na C ka ga-ewe 10 sekọnd nke ọ bụla.

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Dị ka a pụrụ ịhụ site na ọnụ ọgụgụ ahụ, nkezi oge maka usoro ahụ ga-abụ (100 + 110 + 120) / 3 = 110. A na-akpọ mmetụta a mmetụta convoy, mgbe ụfọdụ ndị na-eji ihe onwunwe eme ihe ga-akwụ n'ahịrị na-eso ndị na-azụ ahịa dị arọ. Ọ dị ka ahịrị n'ụlọ ahịa ihe nri mgbe enwere onye ahịa n'ihu gị nke nwere ụgbọ ala zuru oke. Ihe ngwọta kachasị mma maka nsogbu ahụ bụ ịgbalị ịgbanwe akwụkwọ ndekọ ego ma ọ bụ zuru ike na ume miri emi.

Ọrụ kacha nta nke mbụ

Ọ ga-ekwe omume n'ụzọ ụfọdụ dozie a yiri ọnọdụ na heavyweight Filiks? N'ezie. A na-akpọ ụdị atụmatụ ọzọỌrụ kacha nta nke mbụ (SJF). Algọridim ya bụkwa ihe ochie - dị ka aha ahụ pụtara, a ga-ebu ụzọ malite ọrụ ndị kacha dị mkpụmkpụ, otu na-esote.

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

N'ihe atụ a, ihe ga-esi na-agba ọsọ otu usoro ahụ ga-abụ ọganihu na oge ntụgharị usoro mmemme na ọ ga-abụ nhata. 50 kama 110, nke fọrọ nke nta ka ọ bụrụ ugboro abụọ ka mma.

Ya mere, maka echiche e nyere na ọrụ niile na-abịa n'otu oge, SJF algorithm yiri ka ọ bụ ihe kachasị mma. Otú ọ dị, echiche anyị ka eyighị ka ọ bụ ihe ezi uche dị na ya. Oge a anyị na-agbanwe echiche 2 na oge a na-eche na ọrụ nwere ike ịnọ n'oge ọ bụla, ọ bụghịkwa n'otu oge ahụ. Olee nsogbu nke a nwere ike ịkpata?

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Ka anyị were ya na ọrụ A (100c) rutere na mbụ wee malite igbu ya. Na t=10, ọrụ B na C rutere, nke ọ bụla n'ime ha ga-ewe nkeji iri. Ya mere, nkezi oge igbu oge bụ (10+(100-110)+(10-120))10 = 3. Kedu ihe onye nhazi oge nwere ike ime iji meziwanye nke a?

Oge kacha nso iji mechaa mbụ (STCF)

Iji mee ka ọnọdụ ahụ dịkwuo mma, anyị na-ahapụ echiche 3 na mmemme ahụ amalitela ma na-agba ọsọ ruo mgbe emechara. Na mgbakwunye, anyị ga-achọ nkwado ngwaike yana, dịka ị nwere ike iche, anyị ga-eji ngụ oge ịkwụsị ọrụ na-agba ọsọ na ntụgharị okwu. Ya mere, onye nhazi oge nwere ike ime ihe n'oge ọrụ B, C bịarutere - kwụsị ịrụ ọrụ A ma tinye ọrụ B na C n'ime nhazi na, mgbe ha gwụchara, na-aga n'ihu na-eme usoro A. A na-akpọ onye nhazi dị otú ahụ. STCFma ọ bụ Ọrụ mbuso ụzọ.

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Nsonaazụ nke onye nhazi a ga-abụ nsonaazụ ndị a: ((120-0)+(20-10)+(30-10))/3=50. Ya mere, onye nhazi oge dị otú ahụ na-aghọ nke kachasị mma maka ọrụ anyị.

Oge nzaghachi metrik

Ya mere, ọ bụrụ na anyị maara oge na-agba ọsọ nke ọrụ na na ọrụ ndị a na-eji CPU naanị, STCF ga-abụ ngwọta kacha mma. Na otu oge n'oge mbụ, algọridim ndị a na-arụ ọrụ nke ọma. Otú ọ dị, onye ọrụ ugbu a na-etinye oge ka ukwuu na njedebe ma na-atụ anya ahụmahụ mmekọrịta na-arụpụta ihe. Ya mere a mụrụ metrik ọhụrụ - oge nzaghachi (nzaghachi).

A na-agbakọ oge nzaghachi dịka ndị a:

Tresponse=Tfirstrun-Ọbịbịa

Ya mere, maka ihe atụ gara aga, oge nzaghachi ga-abụ: A=0, B=0, C=10 (abg=3,33).

Ma ọ pụtakwara na STCF algọridim adịghị mma na ọnọdụ ebe ọrụ 3 rutere n'otu oge - ọ ga-echere ruo mgbe obere ọrụ ga-agwụcha. Ya mere algọridim dị mma maka ntụgharị oge metric, mana ọ dị njọ maka metrik mmekọrịta. Cheedị ma ọ bụrụ na ị na-anọdụ ala na ọdụ na-anwa ịpịnye mkpụrụedemede n'ime onye editọ wee chere ihe karịrị sekọnd 10 n'ihi na ọrụ ọzọ na-eburu CPU. Ọ dịghị ụtọ nke ukwuu.

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Ya mere, anyị na-eche nsogbu ọzọ ihu - kedu ka anyị ga-esi wuo onye nhazi oge nke nwere mmetụta maka oge nzaghachi?

Gburugburu Robin

E mepụtara algọridim iji dozie nsogbu a Gburugburu Robin (RR). Echiche bụ isi dị nnọọ mfe: kama ịrụ ọrụ ruo mgbe emechara, anyị ga-arụ ọrụ ahụ ruo oge ụfọdụ (a na-akpọ nkeji oge) wee gbanwee gaa na ọrụ ọzọ site na kwụ n'ahịrị. Algọridim na-emegharị ọrụ ya ruo mgbe arụchara ọrụ niile. N'okwu a, oge na-agba ọsọ nke mmemme ahụ ga-abụrịrị ọtụtụ oge mgbe nke ahụ gasịrị, ngụ oge ga-akwụsị usoro ahụ. Dịka ọmụmaatụ, ọ bụrụ na ngụ oge na-akwụsị usoro ọ bụla x=10ms, mgbe ahụ nha nke windo mmezu usoro kwesịrị ịbụ otutu nke 10 ma bụrụ 10,20 ma ọ bụ x*10.

Ka anyị leba anya n'otu ihe atụ: Ọrụ ABC na-abata n'otu oge na sistemụ na onye ọ bụla n'ime ha chọrọ ịgba ọsọ maka 5 sekọnd. Algọridim SJF ga-arụcha ọrụ ọ bụla tupu ịmalite ọzọ. N'ụzọ dị iche, RR algọridim nwere windo mmalite = 1s ga-agafe ọrụ ndị a (Fig 4.3):

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)
(SJF Ọzọ (Ọjọrọ maka Oge Nzaghachi)

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)
(Round Robin (Ọ dị mma maka oge nzaghachi)

Nkezi oge nzaghachi maka RR algọridim bụ (0+1+2)/3=1, ebe maka SJF (0+5+10)/3=5.

Ọ bụ ihe ezi uche dị na ya iche na windo oge bụ ihe dị oke mkpa maka RR; ka ọ dị ntakịrị, oge nzaghachi dị elu. Agbanyeghị, ịkwesighi ime ka ọ dị ntakịrị, ebe ọ bụ na oge mgbanwe ọnọdụ ga-ekerekwa òkè na arụmọrụ n'ozuzu ya. Ya mere, nhọrọ nke oge windo igbu oge na-edozi site na onye na-ese ụkpụrụ OS ma dabere na ọrụ ndị a na-eme atụmatụ na a ga-egbu ya. Ịgbanwe ọnọdụ abụghị naanị ọrụ ọrụ na-egbu oge - mmemme na-agba ọsọ na-arụ ọrụ na ọtụtụ ihe ndị ọzọ, dịka ọmụmaatụ, cache dị iche iche, na nke ọ bụla ngbanwe ọ dị mkpa iji chekwaa ma weghachite gburugburu ebe a, nke nwekwara ike iwepụta ọtụtụ ihe. oge.

RR bụ ezigbo nhazi ma ọ bụrụ na anyị na-ekwu naanị maka metrik oge nzaghachi. Mana kedu ka metric ntụgharị oge ọrụ ga-esi na-akpa àgwà na algọridim a? Tụlee ihe atụ dị n'elu, mgbe oge ọrụ nke A, B, C = 5s wee bịarute n'otu oge. Ọrụ A ga-akwụsị na 13, B na 14, C na 15s na nkezi oge ntụgharị ga-abụ 14s. Yabụ, RR bụ algọridim kachasị njọ maka metrik ntụgharị.

N'okwu ndị ọzọ n'ozuzu, ụdị algọridim ọ bụla nke RR dị mma; ọ na-ekewa oge CPU n'otu n'otu n'etiti usoro niile. Ya mere, metrik ndị a na-emegide ibe ha mgbe niile.

Ya mere, anyị nwere ọtụtụ algọridim dị iche iche ma n'otu oge ahụ a ka nwere ọtụtụ echiche fọdụrụ - na a maara oge ọrụ na na ọrụ ahụ na-eji CPU naanị.

Ịgwakọta na I/O

Nke mbụ, ka anyị wepụ echiche 4 na usoro ahụ na-eji CPU naanị; dị ka ọ dị, nke a abụghị ikpe na usoro nwere ike ịnweta ngwa ndị ọzọ.

Oge usoro ọ bụla rịọrọ ọrụ I/O, usoro a na-abanye na steeti akpọchiri, na-eche ka I/O mechaa. Ọ bụrụ na ezigara m / O na draịvụ ike, mgbe ahụ, ọrụ dị otú ahụ nwere ike were ruo ọtụtụ ms ma ọ bụ karịa, na processor ga-adịkwaghị ọrụ n'oge a. N'oge a, onye nhazi usoro nwere ike iji usoro ọ bụla ọzọ nọrọ na processor. Mkpebi ọzọ onye nhazi oge ga-eme bụ mgbe usoro a ga-emecha I/O ya. Mgbe nke a mere, nkwụsị ga-eme ma OS ga-etinye usoro nke na-akpọ I/O na steeti njikere.

Ka anyị lee ihe atụ nke ọtụtụ ọrụ. Onye ọ bụla n'ime ha chọrọ 50ms nke oge CPU. Agbanyeghị, nke mbụ ga-enweta I/O kwa 10ms (nke a ga-egbu kwa 10ms ọ bụla). Na usoro B na-eji ngwa nhazi 50ms na-enweghị I/O.

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

N'ihe atụ a, anyị ga-eji nhazi nhazi STCF. Kedu ka onye nhazi oge ga-esi akpa àgwà ma ọ bụrụ na amalitere usoro dịka A na ya? Ọ ga-eme ihe ndị a: nke mbụ, ọ ga-arụ ọrụ nke ọma na usoro A, wee malite usoro B.

Sistemụ arụ ọrụ: Mpekere atọ dị mfe. Akụkụ 4: Okwu mmalite nke onye nhazi oge (nsụgharị)

Ụzọ ọdịnala iji dozie nsogbu a bụ ka a na-emeso ms iri ọ bụla nke usoro A dị ka ọrụ dị iche. Ya mere, mgbe ịmalite na STJF algọridim, nhọrọ n'etiti ọrụ 10 ms na ọrụ 50 ms doro anya. Mgbe ahụ, mgbe subtask A rụchara, usoro B na I/O ga-amalite. Mgbe I / O gwụchara, ọ ga-abụ omenala ịmalite usoro 10ms A ọzọ kama usoro B. N'ụzọ dị otú a, ọ ga-ekwe omume iji mejuputa overlap, ebe CPU na-eji usoro ọzọ eme ihe mgbe onye mbụ na-echere I/O. N'ihi ya, a na-eji usoro ahụ eme ihe nke ọma - n'oge a na-eche usoro mmekọrịta na-echere I / O, enwere ike ịme usoro ndị ọzọ na nhazi.

Oracle adịkwaghị

Ugbu a, ka anyị gbalịa wepụ echiche ahụ na a maara oge na-agba ọsọ nke ọrụ ahụ. Nke a n'ozuzu bụ echiche kachasị njọ na nke enweghị ezi uche na ndepụta niile. N'ezie, na nkezi OS nkịtị, OS n'onwe ya na-amakarị ntakịrị banyere oge arụ ọrụ, yabụ kedu ka ị ga-esi wuo onye nhazi oge n'amaghị ogologo oge ọrụ ahụ ga-ewe? Ikekwe anyị nwere ike iji ụfọdụ ụkpụrụ RR dozie nsogbu a?

Nsonaazụ

Anyị lere anya n'echiche bụ isi nke usoro nhazi ọrụ wee lelee ezinụlọ 2 nke ndị nhazi oge. Nke mbụ na-amalite ọrụ kachasị dị mkpirikpi na mbụ wee si otú a na-abawanye oge ntụgharị, ebe nke abụọ na-adọwa n'etiti ọrụ niile n'otu aka ahụ, na-abawanye oge nzaghachi. Algọridim abụọ ahụ dị njọ ebe algọridim nke ezinụlọ ọzọ dị mma. Anyị lebakwara anya ka iji CPU na I/O na-emekọ ihe nwere ike isi meziwanye arụmọrụ, mana ejighi OS clairvoyance dozie nsogbu ahụ. Na nkuzi na-esote anyị ga-eleba anya na onye nhazi nke na-eleba anya n'oge gara aga ma gbalịa ịkọ ọdịnihu. A na-akpọkwa ya kwụ n'azụ nzaghachi ọtụtụ ọkwa.

isi: www.habr.com

Tinye a comment