Processtyringsblok - Process control block

En processtyringsblok (PCB) er en datastruktur, der bruges af computeroperativsystemer til at gemme alle oplysninger om en proces. Det er også kendt som en procesbeskrivelse. Når en proces oprettes (initialiseres eller installeres), opretter operativsystemet en tilsvarende processtyringsblok.

Dette angiver procestilstanden dvs. ny, klar, kørende, venter eller afsluttes.

Rolle

PCB'ernes rolle er central i processtyring : de fleste værktøjer får adgang til og/eller ændrer dem, især dem, der er involveret i planlægning og ressourceforvaltning.

Struktur

I multitasking -operativsystemer gemmer printkortet data, der er nødvendige for korrekt og effektiv processtyring. Selvom detaljerne i disse strukturer er systemafhængige, falder fælles elementer i tre hovedkategorier:

  • Procesidentifikation
  • Proces tilstand
  • Proces kontrol

Der findes statustabeller for hver relevant enhed, f.eks. Beskrivelse af hukommelse, I/O -enheder, filer og processer.

Hukommelsestabeller indeholder f.eks. Oplysninger om tildeling af hoved- og sekundær (virtuel) hukommelse til hver proces, autorisationsattributter til adgang til hukommelsesområder, der deles mellem forskellige processer osv. I/O -tabeller kan have poster, der angiver tilgængelighed af en enhed eller dens tildeling til en proces, status for I/O -operationer, placeringen af ​​hukommelsesbuffere, der bruges til dem osv.

Procesidentifikationsdata inkluderer en unik identifikator for processen (næsten uvægerligt et helt tal) og i et multiuser-multitasking-system data som f.eks. Identifikatoren for den overordnede proces, brugeridentifikator, brugergruppeidentifikator osv. Proces-id'et er særligt relevant da det ofte bruges til at krydsreferere tabellerne defineret ovenfor, f.eks. at vise hvilken proces der bruger hvilke I/O-enheder eller hukommelsesområder.

Procestilstandsdata definerer status for en proces, når den suspenderes, så OS kan genstarte den senere. Dette inkluderer altid indholdet af generelle CPU-registre, CPU-processtatusordet, stakken og rammepegerne osv. Under kontekstskift stoppes den kørende proces, og en anden proces kører. Kernen skal stoppe udførelsen af ​​den igangværende proces, kopiere værdierne i hardware -registre til dets PCB og opdatere hardware -registre med værdierne fra PCB'et for den nye proces.

Proceskontroloplysninger bruges af operativsystemet til at styre selve processen. Dette omfatter:

  • Procesplanlægningstilstand - Processens tilstand i form af "klar", "suspenderet" osv. Samt anden planlægningsinformation, f.eks. Prioritetsværdi, den tid der er gået siden processen fik kontrol over CPU'en eller siden den blev suspenderet. I tilfælde af en suspenderet proces skal hændelsesidentifikationsdata også registreres for den begivenhed, processen venter på.
  • Processtruktureringsinformation - procesens børn -id'er eller id'er for andre processer relateret til den aktuelle på en eller anden funktionel måde, som kan repræsenteres som en kø, en ring eller andre datastrukturer
  • Interprocess kommunikationsinformation - flag, signaler og meddelelser forbundet med kommunikationen mellem uafhængige processer
  • Behandle privilegier - tilladt/ikke tilladt adgang til systemressourcer
  • Process State - ny, klar, kørende, ventende, død
  • Procesnummer (PID) –unikt identifikationsnummer for hver proces (også kendt som proces -id )
  • Programtæller (PC) –En markør til adressen på den næste instruktion, der skal udføres for denne proces
  • CPU -registre - Registrer sæt, hvor processen skal gemmes for udførelse for kørende tilstand
  • CPU -planlægningsinformation - information planlægger CPU -tid
  • Hukommelsesstyringsinformation - sidetabel, hukommelsesgrænser, segmenttabel
  • Regnskabsoplysninger - mængden af CPU, der bruges til procesudførelse, tidsbegrænsninger, eksekverings -id osv.
  • I/O -statusinformation - liste over I/O -enheder, der er tildelt processen.

Beliggenhed

PCB skal opbevares i et hukommelsesområde beskyttet mod normal procesadgang. I visse operativsystemer PCB er placeret i begyndelsen af kernen stakken af processen.

Se også

Noter