Mallonge priskribu la signifon kaj funkcion de PCB

Por ke ĉiu programo partoprenu en la samtempa ekzekuto, inkluzive de datumoj povas funkcii sendepende, speciala datumstrukturo devas esti agordita por ĝi en la operaciumo, nomita la procezkontrolbloko (PCB, Proceza Kontrola Bloko). Estas unu-al-unu korespondado inter la procezo kaj la PCB, kaj la uzantprocezo ne povas esti modifita.

ipcb

La rolo de la proceza kontrola bloko PCB:

Por faciligi la sisteman priskribon kaj administradon de la operacio de la procezo, datumstrukturo estas specife difinita por ĉiu procezo en la kerno de la OS-Process Control Block PCB (Process Control Block). Kiel parto de la proceza ento, PCB registras ĉiujn informojn bezonatajn de la operaciumo por priskribi la nunan situacion de la procezo kaj administri la operacion de la procezo. Ĝi estas la plej grava registrita datumstrukturo en la operaciumo. La rolo de PCB estas fari programon (inkluzive de datumoj) kiu ne povas funkcii sendepende en multi-programa medio iĝi baza unuo kiu povas funkcii sendepende, procezo kiu povas esti efektivigita samtempe kun aliaj procezoj.

(2) PCB povas realigi intermitan operacian reĝimon. En plurprograma medio, la programo funkcias en intermita operacia reĝimo de halto-kaj-iro. Kiam procezo estas suspendita pro blokado, ĝi devas reteni la CPU-ejinformojn kiam ĝi funkcias. Post havi la PCB, la sistemo povas konservi la CPU-ejinformojn en la PCB de la interrompita procezo por uzo kiam la CPU-ejo estas restarigita kiam la procezo estas planita por ekzekuto denove. Tial oni povas denove klarigi, ke en plurprograma medio, kiel statika programo en la tradicia signifo, ĉar ĝi ne havas la rimedojn por protekti aŭ savi sian propran operaciumon, ĝi ne povas garantii la reprodukteblecon de siaj operaciaj rezultoj. , tiel perdante sian funkciadon. signifon.

(3) PCB provizas informojn necesajn por proceza administrado. Kiam la planisto planas procezon por funkcii, ĝi nur povas trovi la respondan programon kaj datumojn laŭ la komenca adreso-montrilo de la programo kaj datumoj registritaj en la PCB de la procezo en la memoro aŭ ekstera stokado; dum la procezo de kurado, kiam la dosiero devas esti alirita Kiam la dosieroj aŭ I/O-aparatoj en la sistemo, ili ankaŭ bezonas fidi la informojn en la PCB. Krome, laŭ la listo de rimedoj en la PCB, ĉiuj rimedoj necesaj por la procezo povas esti lernitaj. Oni povas vidi, ke dum la tuta vivociklo de procezo, la operaciumo ĉiam kontrolas kaj administras la procezon laŭ la PCB.

(4) PCB provizas informojn necesajn por proceza planado. Nur procezoj en la preta stato povas esti planitaj por ekzekuto, kaj la PCB disponigas informojn pri kiu stato la procezo estas en. Se la procezo estas en la preta stato, la sistemo enigas ĝin en la proceza preta atendovico kaj atendas ke la planisto planu. ; krome, estas ofte necese koni aliajn informojn pri la procezo dum planado. Ekzemple, en la prioritata planado-algoritmo, vi devas scii la procezon Prioritato. En iuj pli justaj planaj algoritmoj, vi ankaŭ bezonas scii la atendan tempon de la procezo kaj la eventojn, kiuj estis efektivigitaj.

(5) PCB realigas sinkronigon kaj komunikadon kun aliaj procezoj. La proceda sinkroniga mekanismo estas uzata por realigi la kunordigitan operacion de diversaj procezoj. Kiam la semaformekanismo estas adoptita, ĝi postulas ke ekvivalenta semaforo por sinkronigado estas metita en ĉiu procezo. La PCB ankaŭ havas areon aŭ komunikadvicmontrilon por procezkomunikado.

Informoj en la proceza kontrola bloko:

En la proceza kontrola bloko, ĝi ĉefe inkluzivas la jenajn informojn:

(1) Proceza identigilo: La proceza identigilo estas uzata por unike indiki procezon. Procezo kutime havas du specojn de identigiloj: ① eksteraj identigiloj. Por faciligi la uzantprocezon aliri la procezon, ekstera identigilo devas esti agordita por ĉiu procezo. Ĝi estas provizita de la kreinto kaj kutime konsistas el literoj kaj ciferoj. Por priskribi la familian rilaton de la procezo, la gepatra proceza ID kaj la infanproceza ID ankaŭ devus esti agordita. Krome, uzantidentigilo povas esti agordita por indiki la uzanton kiu posedas la procezon. ②Interna identigilo. Por faciligi la uzon de la procezo de la sistemo, interna identigilo estas fiksita por la procezo en la OS, tio estas, ĉiu procezo ricevas unikan ciferecan identigilon, kiu estas kutime la seria numero de procezo.

(2) Procesoro stato: La procesoro stato informo ankaŭ estas nomita la kunteksto de la procesoro, kiu estas ĉefe kunmetita de la enhavo de diversaj registroj de la procesoro. Ĉi tiuj registroj inkluzivas: ①Ĝeneraluzeblaj registroj, ankaŭ konataj kiel uzantaj videblaj registroj, kiuj estas alireblaj per uzantprogramoj kaj uzataj por provizore konservi informojn. En la plej multaj procesoroj, ekzistas 8 ĝis 32 ĝeneraluzeblaj registroj. En RISC-strukturitaj komputiloj Povas esti pli ol 100; ②Instrukcia nombrilo, kiu konservas la adreson de la sekva instrukcio alirota; ③Program-statusa vorto PSW, kiu enhavas statusajn informojn, kiel kondiĉan kodon, ekzekutreĝimon, interrompan maskon-flagon ktp.; ④Uzanta stakmontrilo, Ĝi signifas, ke ĉiu uzantprocezo havas unu aŭ plurajn rilatajn sistemajn stakojn, kiuj estas uzataj por stoki procezojn kaj sistemajn alvokoparametrojn kaj alvokadresojn. La stakmontrilo montras al la supro de la stako. Kiam la procesoro estas en la ekzekutŝtato, multe de la prilaboritaj informoj estas metita en la registron. Kiam la procezo estas ŝaltita, la procesoro-ŝtatinformoj devas esti konservitaj en la responda PCB, tiel ke la ekzekuto povas daŭri de la rompopunkto kiam la procezo estas ree efektivigita.

(3) Informo pri proceza planado: Kiam la OS planas, necesas kompreni la staton de la procezo kaj informojn pri proceza planado. Ĉi tiuj informoj inkluzivas: ① Proceza stato, indikanta la aktualan staton de la procezo, kiu estas uzata kiel bazo por proceza planado kaj interŝanĝado ②Proceza prioritato estas entjero uzata por priskribi la prioritatnivelon de la procezo uzante la procesoron. La procezo kun pli alta prioritato devus ricevi la procesoron unue; ③Aliaj informoj bezonataj por proceza planado, kiu rilatas al la proceza planado algoritmo uzata Ekzemple, la sumo de la tempo, kiam la procezo atendis la CPU, la sumo de la tempo, kiam la procezo estis ekzekutita, ktp; ④Okazaĵo rilatas al la evento atendanta ke la procezo ŝanĝiĝos de la ekzekuta stato al la blokado, tio estas, la kaŭzo de la blokado.

(4) Informoj pri proceza kontrolo: Rilatas al la informoj necesaj por proceza kontrolo, kiu inkluzivas: ①La adreso de la programo kaj datumoj, la memoro aŭ ekstera memoradreso de la programo kaj datumoj en la proceza ento, por ke ĝi estu planita al. ekzekuti kiam la procezo estas ekzekutita. , La programo kaj datumoj troveblas de la PCB; ②Proceza sinkronigado kaj komunikado-mekanismo, kiu estas necesa mekanismo por sinkronigado kaj proceza komunikado, kiel mesaĝvostomontriloj, semaforoj, ktp., ili povas esti metitaj en la PCB tute aŭ parte; ③Listo de rimedoj, en kiu estas listigitaj ĉiuj rimedoj (krom CPU) postulataj de la procezo dum ĝia funkciado, kaj ankaŭ estas listo de rimedoj asignitaj al la procezo; ④Linkmontrilo, kiu donas al la procezo (PCB) La unua adreso de la PCB de la sekva procezo en la atendovico.