Process control block

Process control block (zkratka PCB, Task Control Block nebo Task Struct) je v informatice označení pro datovou strukturu uloženou v jádře operačního systému, která obsahuje informace potřebné pro správu a běh procesů. Každý proces má svoji vlastní PCB, přičemž jejich maximální počet může být pevně určen nebo mohou být vytvářeny dynamicky (omezením bude jen dostupná paměť).

Obsažené informace

V různých implementacích se obsah PCB může lišit, avšak všeobecně obsahuje o procesu následující informace:

Během změny kontextu (anglicky context switch) je běžící proces zastaven a jiný proces je vybrán, aby mohl běžet. Jádro operačního systému musí zastavit proces a uložit stav procesoru do PCB, aby při opětovném spuštění mohl být stav procesu obnoven a pokračovat tak, jako kdyby nebyl přerušen.

Umístění PCB

Protože PCB obsahuje důležité informace o procesech, musí být umístěn v části paměti, která je chráněna před přístupem ostatních uživatelů a procesů. V některých operačních systémech je PCB umístěna na začátku zásobníku jádra operačního systému pro daný proces, protože je to vhodně chráněné místo.[1]

Reference

  1. Yong, Zhang, "Breaking through the Maximum Process Number", Linux Journal, 1 Jan 2004, [1]