Deskribatu laburki PCBren esanahia eta funtzioa

Programa bakoitza aldibereko exekuzioan parte hartu ahal izateko, datuak barne, modu independentean exekutatu ahal izateko, sistema eragilean datu-egitura berezi bat konfiguratu behar da, prozesuaren kontrol blokea izenekoa (PCB, Prozesuaren Kontrol blokea). Prozesuaren eta PCBaren artean bat-bateko korrespondentzia dago, eta erabiltzailearen prozesua ezin da aldatu.

ipcb

Prozesuaren kontrol blokearen PCBren rola:

Sistemaren deskribapena eta prozesuaren funtzionamenduaren kudeaketa errazteko, prozesu bakoitzerako datu-egitura bat berariaz definitzen da OS-Process Control Block PCB (Process Control Block) muinean. Prozesuaren entitatearen zati gisa, PCBk sistema eragileak prozesuaren egungo egoera deskribatzeko eta prozesuaren funtzionamendua kudeatzeko behar duen informazio guztia erregistratzen du. Sistema eragilean erregistratutako datuen egitura garrantzitsuena da. PCBren eginkizuna programa anitzeko ingurune batean modu independentean exekutatu ezin den programa bat (datuak barne) independentean exekutatu daitekeen oinarrizko unitate bihurtzea da, beste prozesu batzuekin batera exekutatu daitekeen prozesu bat.

(2) PCB etengabeko funtzionamendu modua konturatu daiteke. Programa anitzeko ingurune batean, programa gelditzeko eta joan-etorriko funtzionamendu moduan exekutatzen da. Blokeoaren ondorioz prozesu bat eteten denean, exekutatzen ari denean CPU gunearen informazioa gorde behar du. PCB izan ondoren, sistemak PUZaren gunearen informazioa gorde dezake etendako prozesuaren PCBan erabiltzeko, PUZaren gunea berrezartzen denean prozesua berriro exekutatzeko programatuta dagoenean. Hori dela eta, argi utzi daiteke berriz ere programa anitzeko ingurune batean, ohiko zentzuan programa estatiko gisa, bere ustiapen-gune propioa babesteko edo gordetzeko baliabiderik ez duelako, ezin duela bermatu bere operazio-emaitzen errepikagarritasuna. , horrela funtzionamendua galduz. esangura.

(3) PCB prozesuak kudeatzeko beharrezkoa den informazioa eskaintzen du. Antolatzaileak prozesu bat exekutatzeko programatzen duenean, dagokion programa eta datuak soilik aurki ditzake programaren hasierako helbidearen erakuslearen eta memorian edo kanpoko biltegiratze prozesuaren PCBan grabatutako datuen arabera; exekutatzeko prozesuan, fitxategira sartu behar denean Sistemako fitxategiak edo I/O gailuak, PCBko informazioan ere oinarritu behar dute. Gainera, PCBko baliabideen zerrendaren arabera, prozesurako beharrezkoak diren baliabide guztiak ikas daitezke. Ikusten denez, prozesu baten bizitza-ziklo osoan, sistema eragileak beti kontrolatzen eta kudeatzen du prozesua PCBaren arabera.

(4) PCB-k prozesuak antolatzeko behar den informazioa ematen du. Prest egoeran dauden prozesuak soilik programatu daitezke exekutatzeko, eta PCBak prozesua zein egoeratan dagoen jakiteko informazioa ematen du. Prozesua prest dagoen egoeran badago, sistemak prozesua prest dagoen ilaran txertatzen du eta programatzaileak programatu arte itxarongo du. ; gainera, sarritan beharrezkoa da prozesuari buruzko beste informazio batzuk jakitea programazioa egiterakoan. Esate baterako, lehentasunak antolatzeko algoritmoan, prozesuaren Lehentasuna ezagutu behar duzu. Programazio-algoritmo justuago batzuetan, prozesuaren itxaron-denbora eta exekutatu diren gertaerak ere ezagutu behar dituzu.

(5) PCB-k beste prozesu batzuekiko sinkronizazioa eta komunikazioa egiten ditu. Prozesua sinkronizatzeko mekanismoa hainbat prozesuren funtzionamendu koordinatua gauzatzeko erabiltzen da. Semaforo-mekanismoa hartzen denean, prozesu bakoitzean sinkronizatzeko dagokion semaforoa ezartzea eskatzen du. PCBak eremu edo komunikazio ilararen erakuslea ere badu prozesuaren komunikaziorako.

Prozesuaren kontrol blokeko informazioa:

Prozesuaren kontrol-blokean, batez ere informazio hau sartzen da:

(1) Prozesuaren identifikatzailea: prozesuen identifikatzailea prozesu bat modu esklusiboan adierazteko erabiltzen da. Prozesu batek bi identifikatzaile mota izan ohi ditu: ① kanpoko identifikatzaileak. Erabiltzaile-prozesua prozesuan sartzeko errazteko, prozesu bakoitzeko kanpoko identifikatzaile bat ezarri behar da. Sortzaileak ematen du eta normalean hizkiz eta zenbakiz osatuta dago. Prozesuaren familia-harremana deskribatzeko, guraso-prozesuaren IDa eta ume-prozesuaren IDa ere ezarri behar dira. Horrez gain, erabiltzaile ID bat ezarri daiteke prozesuaren jabea den erabiltzailea adierazteko. ②Barne identifikatzailea. Sistemak prozesuaren erabilera errazteko, OSan prozesuari barne identifikatzaile bat ezartzen zaio, hau da, prozesu bakoitzari identifikatzaile digital bakarra ematen zaio, prozesu baten serie-zenbakia izan ohi dena.

(2) Prozesadorearen egoera: prozesadorearen egoerari informazioa prozesadorearen testuingurua ere deitzen zaio, prozesadorearen hainbat erregistrotako edukiz osatuta dagoena. Erregistro hauek honako hauek dira: ①Erabilera orokorreko erregistroak, erabiltzaileak ikusgai dauden erregistro gisa ere ezagutzen direnak, erabiltzaile-programek eskura daitezkeenak eta informazioa aldi baterako gordetzeko erabiltzen direnak. Prozesadore gehienetan, erabilera orokorreko 8 eta 32 erregistro daude. RISC egituratutako ordenagailuetan 100 baino gehiago egon daitezke; ②Instrukzio-kontagailua, sartu beharreko hurrengo instrukzioaren helbidea gordetzen duena; ③Programaren egoera-hitza PSW, egoera informazioa daukana, hala nola baldintza kodea, exekuzio modua, eten maskara bandera, etab.; ④Erabiltzaile pila-erakuslea, Erabiltzaile-prozesu bakoitzak erlazionatutako sistema-pila bat edo gehiago dituela esan nahi du, prozesu eta sistema-deien parametroak eta deien helbideak gordetzeko erabiltzen direnak. Pila-erakusleak pilaren goiko aldera seinalatzen du. Prozesadorea exekuzio-egoeran dagoenean, prozesatzen ari den informazio asko erregistroan jartzen da. Prozesua aldatzen denean, prozesadorearen egoerari buruzko informazioa dagokion PCBan gorde behar da, prozesua berriro exekutatzen denean eten puntutik aurrera jarraitu ahal izateko.

(3) Prozesuaren programazioaren informazioa: OSa programatzen ari denean, prozesuaren egoera eta prozesuaren programazioari buruzko informazioa ulertzea beharrezkoa da. Informazio horien artean honako hauek daude: ① Prozesuaren egoera, prozesuaren uneko egoera adierazten duena, prozesuaren programazio eta trukatzeko oinarri gisa erabiltzen dena ②Prozesuaren lehentasuna prozesadorea erabiliz prozesuaren lehentasun-maila deskribatzeko erabiltzen den zenbaki oso bat da. Lehentasun handiagoa duen prozesuak prozesadorea lortu beharko luke lehenik; ③Prozesuaren programaziorako beharrezkoa den beste informazio bat, erabilitako prozesuaren programazio algoritmoarekin erlazionatuta. Adibidez, prozesuak PUZaren zain egon den denboraren batura, prozesua exekutatu den denboraren batura, eta abar; ④Event prozesua exekuzio-egoeratik blokeo-egoerara aldatzeko zain dagoen gertaerari egiten dio erreferentzia, hau da, blokeoaren kausa.

(4) Prozesua kontrolatzeko informazioa: prozesuaren kontrolerako beharrezkoa den informazioari egiten dio erreferentzia, hau da: ①Programaren eta datuen helbidea, programaren memoria edo kanpoko memoria helbidea eta prozesu-entitatearen datuak, programatu ahal izateko. exekutatu prozesua exekutatzen denean. , Programa eta datuak PCBtik aurki daitezke; ②Prozesuen sinkronizazioa eta komunikazio mekanismoa, sinkronizaziorako eta prozesu komunikaziorako beharrezkoa den mekanismoa, hala nola, mezu-ilararen erakusleak, semaforoak, etab., PCBan osorik edo zati batean jar daitezke; ③Baliabideen zerrenda, non prozesuak bere funtzionamenduan behar dituen baliabide guztiak (PUZa izan ezik) zerrendatzen dira, eta prozesuari esleitutako baliabideen zerrenda ere badago; ④Link erakuslea, prozesuari ematen diona (PCB) ilaran dagoen hurrengo prozesuaren PCBaren lehen helbidea.