Farito fohifohy ny dikany sy ny fiasan’ny PCB

Mba hahatonga ny programa tsirairay handray anjara amin’ny famonoana miaraka, anisan’izany ny angon-drakitra dia afaka mihazakazaka tsy miankina, ny rafitra data manokana dia tsy maintsy amboarina ho azy ao amin’ny rafitra miasa, antsoina hoe sakana fanaraha-maso ny dingana (PCB, Sakana Fanaraha-maso ny fizotrany). Misy fifampiraharahana eo amin’ny dingana sy ny PCB, ary tsy azo ovaina ny fizotran’ny mpampiasa.

ipcb

Ny anjara asan’ny rafitra fanaraha-maso ny PCB:

Mba hanamorana ny famaritana ny rafitra sy ny fitantanana ny fampandehanana ny dingana, ny rafitra data dia voafaritra manokana ho an’ny dingana tsirairay ao amin’ny fototry ny OS-Process Control Block PCB (Process Control Block). Amin’ny maha-ampahan’ny sampan-draharahan’ny dingana, ny PCB dia mirakitra ny fampahalalana rehetra ilain’ny rafitra miasa mba hamaritana ny toe-javatra misy amin’izao fotoana izao sy ny fitantanana ny fizotran’ny dingana. Io no rafitra angon-drakitra voarakitra manan-danja indrindra ao amin’ny rafitra miasa. Ny anjara asan’ny PCB dia ny manao fandaharana (anisan’izany ny angona) izay tsy afaka mandeha tsy miankina amin’ny tontolon’ny programa maro ho lasa singa fototra afaka mandeha tsy miankina, dingana iray izay azo tanterahina miaraka amin’ny dingana hafa.

(2) PCB dia afaka mahatsapa fomba fiasa miato. Ao amin’ny tontolo misy fandaharana maro, ny fandaharana dia mandeha amin’ny fomba fiasa miato sy mandeha. Rehefa miato ny dingana iray noho ny fanakanana, dia tsy maintsy mitazona ny mombamomba ny tranokalan’ny CPU izy io rehefa mandeha. Aorian’ny fananana ny PCB, ny rafitra dia afaka mitahiry ny mombamomba ny tranokalan’ny CPU ao amin’ny PCB momba ny dingana tapaka mba hampiasaina rehefa averina amin’ny laoniny ny tranokalan’ny CPU rehefa voalahatra hotanterahina indray ny dingana. Noho izany, azo hazavaina indray fa ao anatin’ny tontolon’ny programa marobe, amin’ny maha-programa static amin’ny heviny mahazatra, satria tsy manana fitaovana hiarovana na hamonjena ny tranokalam-piasany manokana izy, dia tsy afaka miantoka ny famerenana ny vokatra azony. , ka very ny asany. dikany.

(3) PCB dia manome fampahalalana ilaina amin’ny fitantanana ny dingana. Rehefa ny scheduler fandaharam-potoana mba hihazakazaka, dia tsy afaka mahita afa-tsy ny mifanaraka fandaharana sy ny angon-drakitra araka ny fanombohana adiresy fanondro ny fandaharana sy ny angona voarakitra ao amin’ny PCB ny dingana ao amin’ny fahatsiarovana na ivelany fitehirizana; mandritra ny dingan’ny fandehanana, rehefa mila miditra ny rakitra Rehefa ny rakitra na ny fitaovana I / O ao amin’ny rafitra, dia mila miantehitra amin’ny fampahalalana ao amin’ny PCB ihany koa izy ireo. Ankoatra izany, araka ny lisitry ny loharanon-karena ao amin’ny PCB, ny loharanon-karena rehetra ilaina amin’ny dingana dia azo ianarana. Hita fa mandritra ny androm-piainan’ny dingana iray, ny rafitra miasa dia mifehy sy mitantana foana ny dingana araka ny PCB.

(4) PCB dia manome fampahalalana ilaina amin’ny fandaharam-potoana. Ny dingana ao amin’ny fanjakana vonona ihany no azo alaina ho an’ny famonoana, ary ny PCB dia manome fampahalalana momba ny toetry ny dingana. ; Ankoatra izany, dia matetika ilaina ny mahafantatra vaovao hafa momba ny dingana rehefa fandaharam-potoana. Ohatra, ao amin’ny algorithm fandaharam-potoana laharam-pahamehana, mila mahafantatra ny dingana Priority ianao. Amin’ny algorithm fandrindrana ara-drariny sasany, mila mahafantatra ny fotoana fiandrasana amin’ny dingana sy ny hetsika efa notanterahina.

(5) PCB mahatsapa synchronization sy ny fifandraisana amin’ny dingana hafa. Ny mekanisma fampifanarahana ny dingana dia ampiasaina amin’ny fanatanterahana ny asa mirindra amin’ny dingana isan-karazany. Rehefa raisina ny mekanika semaphore, dia mitaky ny fametrahana semaphore mifanaraka amin’ny fampifanarahana amin’ny dingana tsirairay. Ny PCB dia manana faritra na tondro filaharana fifandraisana ho an’ny fifandraisana amin’ny dingana.

Fampahalalana ao amin’ny sakana fanaraha-maso ny dingana:

Ao amin’ny sakana fanaraha-maso ny dingana dia ahitana ireto fampahalalana manaraka ireto indrindra:

(1) Famantarana ny dingana: Ny famantarana ny dingana dia ampiasaina hanondroana dingana iray manokana. Matetika misy karazany roa ny dingana iray: ① famantarana ivelany. Mba hanamora ny fizotry ny mpampiasa hiditra amin’ny dingana, dia tsy maintsy apetraka ny famantarana ivelany ho an’ny dingana tsirairay. Nomen’ny mpamorona izy io ary matetika ahitana litera sy isa. Mba hamaritana ny fifandraisan’ny fianakaviana amin’ilay dingana dia tokony hapetraka ihany koa ny ID momba ny fizotry ny ray aman-dreny sy ny ID fizotry ny zaza. Ho fanampin’izany, ny ID mpampiasa dia azo apetraka hanondro ny mpampiasa izay tompon’ny dingana. ②Identifier anatiny. Mba hanamorana ny fampiasana ny fizotran’ny rafitra dia misy identifier anatiny napetraka ho an’ny dingana ao amin’ny OS, izany hoe, ny dingana tsirairay dia omena famantarana nomerika tsy manam-paharoa, izay matetika no nomeraon’ny dingana iray.

(2) Toetran’ny processeur: Ny fampahalalana momba ny fanjakana processeur dia antsoina koa hoe contexte of the processeur, izay ahitana ny votoatin’ny rejisitra isan-karazany amin’ny processeur. Ireto rejisitra ireto dia ahitana: ①Rejistra amin’ny tanjona ankapobeny, fantatra ihany koa amin’ny anarana hoe rejisitra hita maso, izay azon’ny programa mpampiasa idirana ary ampiasaina hitahirizana vaovao vonjimaika. Amin’ny ankamaroan’ny processeurs dia misy rejisitra 8 ka hatramin’ny 32 amin’ny tanjona ankapobeny. Ao amin’ny solosaina RISC-structured Mety misy mihoatra ny 100; ②Instruction counter, izay mitahiry ny adiresin’ny toromarika manaraka hidirana; ③Teny sata programan’ny PSW, izay misy fampahalalana momba ny sata, toy ny fehezan-dalàna, fomba famonoana, saina saron-tava, sns.; ④User stack pointer, Midika izany fa ny fizotran’ny mpampiasa tsirairay dia manana rafitra iray na maromaro mifandraika amin’izany, izay ampiasaina hitahiry ny dingana sy ny rafitra antso an-tariby ary ny adiresy fiantsoana. Ny fanondro ny stack dia manondro ny tampon’ny stack. Rehefa ao amin’ny fanjakana famonoana ny processeur, dia apetraka ao anaty rejisitra ny ankamaroan’ny fampahalalana karakaraina. Rehefa mihodina ny dingana, dia tsy maintsy tehirizina ao amin’ny PCB mifanaraka amin’izany ny fampahalalana momba ny fanjakana processeur, mba hitohizan’ny famonoana avy eo amin’ny teboka tapaka rehefa averina ny dingana.

(3) Fampahalalana momba ny fandaharam-potoana: Rehefa mandamina ny OS dia ilaina ny mahatakatra ny toetry ny dingana sy ny fampahalalana momba ny fandaharam-potoana. Ireto fampahalalana ireto dia ahitana: ① Toetran’ny dingana, manondro ny toetry ny dingana amin’izao fotoana izao, izay ampiasaina ho fototry ny fandaharam-potoana sy ny fifandimbiasana ②Ny laharam-pahamehana dia isa iray ampiasaina hamaritana ny laharam-pahamehana amin’ny dingana amin’ny fampiasana ny processeur. Ny dingana manana laharam-pahamehana ambony dia tokony hahazo ny processeur aloha; ③Fampahafantarana hafa ilaina amin’ny fandaharam-potoana, izay mifandraika amin’ny algorithm fandrindrana ny fizotran’ny dingana ampiasaina Ohatra, ny fitambaran’ny fotoana niandrasan’ny dingana ny CPU, ny fitambaran’ny fotoana nanaovana ny dingana, sy ny sisa; ④Ny hetsika dia manondro ny hetsika miandry ny fizotry ny fanovana avy amin’ny fanjakana famonoana ho amin’ny fanjakana fanakanana, izany hoe ny anton’ny fanakanana.

(4) Fampahalalana momba ny fanaraha-maso ny fizotran’ny dingana: Enti-milaza ny fampahalalana ilaina amin’ny fanaraha-maso ny dingana, izay ahitana: ①Ny adiresin’ny programa sy ny angona, ny fahatsiarovana na ny adiresin’ny fitadidiana ivelany an’ny programa sy ny angona ao amin’ny sampan-draharahan’ny fizotry, mba ahafahana manao fandaharam-potoana tanterahana rehefa vita ny dingana. , Ny programa sy ny angona dia azo jerena ao amin’ny PCB; ②Process synchronization sy fifandraisana mekanika, izay rafitra ilaina ho an’ny synchronization sy ny fizotran’ny fifandraisana, toy ny hafatra filaharana tondro, semaphores, sns, dia azo apetraka ao amin’ny PCB manontolo na ampahany; ③Lisitry ny loharanon-karena, izay ahitana ny loharanon-karena rehetra (afa-tsy ny CPU) takiana amin’ny dingana mandritra ny fampandehanana azy, ary misy koa ny lisitry ny loharano natokana ho an’ny dingana; ④Rohy pointer, izay manome ny dingana (PCB) Ny adiresy voalohany amin’ny PCB amin’ny dingana manaraka ao amin’ny filaharana.