Blok kontrolny procesu

Z Wikipedii, wolnej encyklopedii

Blok kontrolny procesu (ang. Process Control Block, PCB) zwany także blokiem kontrolnym zadania – jest to obszar pamięci operacyjnej, zarezerwowany przez jądro systemu operacyjnego na potrzeby przechowywania wielu ważnych i mniej istotnych informacji o każdym, aktualnie istniejącym i zarejestrowanym w tym systemie procesie. PCB jest reprezentacją procesu w systemie operacyjnym.

Implementacje PCB różnią się w zależności od systemu operacyjnego, jednak zazwyczaj obejmują:

  • identyfikator procesu (PID)
  • Stan procesu: Stan procesu może być określony przez system jako nowy, aktywny, oczekujący lub gotowy.
  • Rejestry procesora: Liczba i typy rejestrów procesora zależą od architektury komputera. Mogą tu występować takie rejestry jak: akumulatory, rejestry indeksowe, wskaźniki stosu, rejestry ogólnego przeznaczenia oraz rejestry warunków. Informacje dotyczące Licznika rozkazów oraz Rejestrów indeksowych muszą być koniecznie przechowywane podczas wystąpienia przerwania, aby proces mógł być potem poprawnie kontynuowany.
  • Informacje o planowaniu przydziału procesora: Do informacji tych należą: priorytet procesu, wskaźniki do kolejek związanych z planowaniem realizacji zamówień, oraz inne parametry planowania.
  • Informacje o zarządzaniu pamięcią: Mogą to być przykładowo informacje takie jak: zawartości rejestrów granicznych, tablice stron lub tablice segmentów (w zależności od systemu wirtualnej pamięci używanej przez system operacyjny).
  • Informacje do rozliczeń: Do tej kategorii informacji zalicza się: ilość zużytego czasu procesora i czasu rzeczywistego, ograniczenia czasowe, numery kont, numery zadań lub procesów itp. Informacje te zwłaszcza w starszych typach komputerów wykorzystywanych komercyjnie, służyły głównie do naliczania opłat użytkownikom za wykorzystany czas procesora.
  • Informacje o stanie wejścia-wyjścia (I/O): Zawarte są tu informacje o urządzeniach wejścia-wyjścia przydzielonych do procesu, jak również wykaz otwartych plików, itd.
  • priorytet procesu
  • wskaźnik na PCB kolejnego procesu

Podczas przełączania kontekstu wstrzymywany jest bieżący proces i uruchamiany następny. W tym czasie jądro systemu operacyjnego musi skopiować wartości rejestrów procesora do PCB zatrzymanego procesu a następnie wartości zapisane w PCB nowego procesu skopiować do rejestrów procesora.

Poniżej zamieszczony jest przykładowy schemat budowy Bloku kontrolnego procesu (PCB):

Wskaźnik Stan procesu
Numer procesu (PID)
Licznik rozkazów
Rejestry
Ograniczenia pamięci
Wykaz otwartych plików
Informacje o planowaniu przydziału procesora

Bibliografia[edytuj | edytuj kod]

  • Abraham Silberschatz, Peter B. Galvin, Greg Gagne: Podstawy systemów operacyjnych. Warszawa: Wydawnictwo Naukowo-Techniczne, 2005, s. 117-119. ISBN 83-204-3215-4.

Zobacz też[edytuj | edytuj kod]