Processtyringsblok i operativsystemet
I den sidste blog lærte vi om processer i operativsystemet og de forskellige tilstande for en proces. Hvis du ikke er bekendt med Process i OS, skal du være klar til den blog herfra. I denne blog vil vi lære om Process Control Block i operativsystemet. Så lad os komme i gang.
I et operativsystem har vi en række processer, der er til stede i det. Hver proces har nogle oplysninger, som CPU’en har brug for til udførelsen af processen. Så vi har brug for en slags datastruktur til at gemme oplysninger om en bestemt proces.
En Process Control Block eller simpel PCB er en datastruktur, der bruges til at lagre de oplysninger om en proces, som kan være nødvendige for at styre planlægningen af en bestemt proces.
Så hver proces får en PCB, som er en slags identifikationskort for en proces. Alle de processer, der er til stede i systemet, vil have et PCB tilknyttet, og alle disse PCB’er er forbundet i en Linked List.
Attributter for en processtyringsblok
Der er forskellige attributter for et PCB, der hjælper CPU’en med at udføre en bestemt proces. Disse attributter er:
- Process Id: Et proces-id er en unik identitet for en proces. Hver proces identificeres ved hjælp af proces-id’et.
- Programtæller: Programtælleren peger på den næste instruktion, der skal udføres af CPU’en. Den bruges til at finde den næste instruktion, der skal udføres.
- Procestilstand: En proces kan være i en hvilken som helst tilstand ud af de mulige tilstande for en proces. CPU’en har derfor brug for at kende en process’ aktuelle tilstand, så det er let at udføre den. Du kan få mere at vide om procestilstand her.
- Prioritet: Der er en prioritet knyttet til hver proces. På grundlag af denne prioritet finder CPU’en ud af, hvilken proces der skal udføres først. Processer med højere prioritet vil blive udført først.
- General-purpose Registers: Under udførelsen af en proces håndterer den en række data, der bruges og ændres af processen. Men i de fleste tilfælde er vi nødt til at stoppe udførelsen af en proces for at starte en anden proces, og efter nogle gange skal den tidligere proces genoptages igen. Da den forrige proces behandlede nogle data og havde ændret dataene, bør processen, når den genoptages, kun bruge disse data. Disse data gemmes i en slags lagerenheder, der kaldes registre.
- Oplysninger om CPU-planlægning: Det angiver oplysninger om de procesplanlægningsalgoritmer, der anvendes af CPU’en til processen.
- Liste over åbnede filer: En proces kan håndtere et antal filer, så CPU’en bør vedligeholde en liste over filer, der åbnes af en proces, for at sikre, at ingen anden proces kan åbne filen på samme tid.
- Liste over I/O-enheder: En proces kan have brug for en række I/O-enheder til at udføre forskellige opgaver. Så der bør føres en ordentlig liste, der viser, hvilken I/O-enhed der bruges af hvilken proces.
Dette er attributterne for en processtyringsblok, og disse oplysninger er nødvendige for at have detaljerede oplysninger om processen, og dette resulterer igen i en bedre udførelse af processen.
Det er alt for denne blog. Håber du har lært noget nyt i dag.