Na kratko opišite pomen in funkcijo PCB

Da bi vsak program sodeloval pri sočasnem izvajanju, vključno s podatki, se lahko izvajal neodvisno, mora biti zanj v operacijskem sistemu konfigurirana posebna podatkovna struktura, imenovana blok za nadzor procesa (PCB, blok za nadzor procesa). Med procesom in tiskanim vezjem obstaja korespondenca ena proti ena, uporabniškega procesa pa ni mogoče spreminjati.

ipcb

Vloga PCB bloka za nadzor procesa:

Za lažji opis sistema in upravljanje delovanja procesa je za vsak proces posebej definirana podatkovna struktura v jedru PCB-ja OS-Process Control Block (Process Control Block). PCB kot del procesne entitete beleži vse informacije, ki jih operacijski sistem potrebuje za opis trenutnega stanja procesa in upravljanje delovanja procesa. Je najpomembnejša struktura zapisanih podatkov v operacijskem sistemu. Vloga PCB je, da program (vključno s podatki), ki ne more delovati neodvisno v večprogramskem okolju, postane osnovna enota, ki se lahko izvaja neodvisno, proces, ki se lahko izvaja sočasno z drugimi procesi.

(2) PCB lahko izvaja prekinitveni način delovanja. V večprogramskem okolju se program izvaja v občasnem načinu delovanja “ustavi in ​​pojdi”. Ko je proces začasno ustavljen zaradi blokiranja, mora med izvajanjem ohraniti informacije o mestu CPE. Ko ima PCB, lahko sistem shrani informacije o mestu CPE v PCB prekinjenega procesa za uporabo, ko se mesto CPE obnovi, ko je proces načrtovan za ponovno izvedbo. Zato je mogoče ponovno pojasniti, da v večprogramskem okolju, kot statični program v tradicionalnem smislu, ker nima sredstev za zaščito ali shranjevanje lastnega delovnega mesta, ne more zagotoviti ponovljivosti svojih rezultatov delovanja. , s čimer izgubi svoje delovanje. pomembnost.

(3) PCB zagotavlja informacije, potrebne za upravljanje procesa. Ko načrtovalnik načrtuje zagon procesa, lahko najde ustrezen program in podatke le glede na kazalec začetnega naslova programa in podatke, zapisane na PCB procesa v pomnilniku ali zunanjem pomnilniku; med procesom izvajanja, ko je treba dostopati do datoteke. Ko so datoteke ali V/I naprave v sistemu, se morajo zanašati tudi na informacije v PCB. Poleg tega se je glede na seznam virov v PCB mogoče naučiti vseh virov, potrebnih za proces. Vidimo lahko, da v celotnem življenjskem ciklu procesa operacijski sistem vedno nadzoruje in upravlja proces v skladu s PCB.

(4) PCB zagotavlja informacije, potrebne za načrtovanje procesa. Za izvedbo je mogoče načrtovati samo procese v stanju pripravljenosti in PCB zagotavlja informacije o tem, v kakšnem stanju je proces. Če je proces v stanju pripravljenosti, ga sistem vstavi v čakalno vrsto pripravljenosti procesa in počaka, da načrtovalnik razporedi ; poleg tega je pri načrtovanju pogosto treba poznati še druge informacije o procesu. Na primer, v algoritmu prednostnega razporejanja morate poznati proces Priority. V nekaterih pravičnejših algoritmih razporejanja morate poznati tudi čakalni čas procesa in dogodke, ki so bili izvedeni.

(5) PCB izvaja sinhronizacijo in komunikacijo z drugimi procesi. Mehanizem sinhronizacije procesov se uporablja za uresničevanje usklajenega delovanja različnih procesov. Ko je mehanizem semaforja sprejet, zahteva, da se v vsakem procesu nastavi ustrezen semafor za sinhronizacijo. PCB ima tudi kazalec območja ali komunikacijske čakalne vrste za komunikacijo procesa.

Informacije v bloku za nadzor procesa:

V bloku za nadzor procesa vključuje predvsem naslednje informacije:

(1) Identifikator procesa: Identifikator procesa se uporablja za edinstveno označevanje procesa. Proces ima običajno dve vrsti identifikatorjev: ① zunanji identifikatorji. Da bi olajšali uporabniški proces za dostop do procesa, je treba za vsak proces nastaviti zunanji identifikator. Zagotavlja ga ustvarjalec in je običajno sestavljen iz črk in številk. Za opis družinskega odnosa procesa je treba nastaviti tudi ID nadrejenega procesa in ID podrejenega procesa. Poleg tega lahko nastavite ID uporabnika, ki označuje uporabnika, ki je lastnik postopka. ②Notranji identifikator. Da bi sistem olajšal uporabo procesa, je za proces v OS nastavljen notranji identifikator, to pomeni, da ima vsak proces edinstven digitalni identifikator, ki je običajno serijska številka procesa.

(2) Stanje procesorja: Podatki o stanju procesorja se imenujejo tudi kontekst procesorja, ki je v glavnem sestavljen iz vsebine različnih registrov procesorja. Ti registri vključujejo: ①Registre splošnega namena, znani tudi kot uporabniški vidni registri, do katerih dostopajo uporabniški programi in se uporabljajo za začasno shranjevanje informacij. V večini procesorjev je od 8 do 32 splošnih registrov. V računalnikih s strukturo RISC jih je lahko več kot 100; ②Števec navodil, ki shrani naslov naslednjega ukaza, do katerega je treba dostopati; ③ Beseda stanja programa PSW, ki vsebuje informacije o stanju, kot so koda stanja, način izvajanja, zastavica prekinitvene maske itd.; ④Kazalec uporabniškega sklada, pomeni, da ima vsak uporabniški proces enega ali več povezanih sistemskih skladov, ki se uporabljajo za shranjevanje parametrov procesnih in sistemskih klicev ter naslovov klicev. Kazalec sklada kaže na vrh sklada. Ko je procesor v stanju izvajanja, se večina informacij, ki se obdelujejo, shrani v register. Ko se proces preklopi, je treba informacije o stanju procesorja shraniti v ustrezen PCB, tako da se lahko izvedba nadaljuje od točke preloma, ko se proces ponovno izvede.

(3) Informacije o načrtovanju procesa: Ko OS načrtuje, je treba razumeti stanje procesa in informacije o načrtovanju procesov. Te informacije vključujejo: ① Status procesa, ki označuje trenutno stanje procesa, ki se uporablja kot osnova za načrtovanje in zamenjavo procesa. ②Prednost procesa je celo število, ki se uporablja za opis ravni prioritete procesa, ki uporablja procesor. Proces z višjo prioriteto bi moral najprej dobiti procesor; ③Druge informacije, potrebne za razporejanje procesov, ki so povezane z uporabljenim algoritmom za razporejanje procesov. ④Dogodek se nanaša na dogodek, ki čaka, da se proces spremeni iz stanja izvajanja v stanje blokiranja, to je vzrok za blokiranje.

(4) Informacije o nadzoru procesa: Nanašajo se na informacije, potrebne za nadzor procesa, ki vključujejo: ①Naslov programa in podatkov, pomnilnik ali naslov zunanjega pomnilnika programa in podatke v procesni entiteti, tako da se lahko načrtuje za izvede, ko se postopek izvede. , Program in podatke najdete na PCB; ② Mehanizem za sinhronizacijo in komunikacijo procesov, ki je nujen mehanizem za sinhronizacijo in komunikacijo procesov, kot so kazalci čakalne vrste sporočil, semaforji itd., ki so lahko v celoti ali delno nameščeni v PCB; ③Seznam virov, na katerem so navedeni vsi viri (razen CPE), ki jih proces zahteva med delovanjem, in je tudi seznam virov, dodeljenih procesu; ④Kazalec povezave, ki daje procesu (PCB) prvi naslov PCB naslednjega procesa v čakalni vrsti.