Vés al contingut

Bloc de control de procés

De la Viquipèdia, l'enciclopèdia lliure

El Bloc de Control de Procés (BCP), també conegut per les inicials angleses PCB (Proces Control Block), és l'estructura de dades on s'agrupa tota la informació que necessita conèixer un sistema operatiu sobre un procés informàtic. Els sistemes operatius necessiten gestionar els processos i per tant, necessiten una estructura de dades per representar i emmagatzemar tota la informació relativa a aquests processos. Aquesta estructura de dades és el BCP.

Cada procés té el seu propi BCP, i aquesta estructura de dades es guarda en memòria durant tot el seu cicle de vida. La implementació exacte de cada BCP depèn de cada sistema operatiu però es pot considerar que tots els sistemes comparteixen una sèrie de dades comunes:

  • Identificador del procés: Valor que identifica de forma unívoca un procés. També conegut com a PID, del terme anglès Process Identificator.
  • Estat del procés: Hi ha diferents models d'estats, depenent del tipus de sistema.
  • Registre comptador de programa: Conté l'adreça de memòria de la propera instrucció a executar. També conegut pel terme anglès Program Counter (PC)
  • Altres registres de la CPU necessaris per a la gestió del procés
  • Espai d'adreces de memòria del procés
  • Prioritat del procés (en el cas que s'utilitzi)
  • Llista de recursos assignats al procés (descriptors de fitxers, sockets oberts, etc.)
  • Estadístiques del procés.
  • Dades del propietari del procés
  • Permisos assignats.
  • Senyals pendents de ser processades.

Podem entendre el concepte de BCP, com el conjunt de metadades que permeten l'administració d'un procés per part del sistema operatiu.

Emmagatzematge en memòria del PCB

[modifica]

Cal tenir en compte que el PCB conté informació crítica d'un procés i que per aquesta raó ha de ser emmagatzemat en una zona de memòria protegida d'accessos indesitjables.

En alguns sistemes operatius, el PCB es localitza al principi de la pila d'execució del kernel.[1]

Referències

[modifica]
  1. Yong, Zhang, "Breaking through the Maximum Process Number", Linux Journal, 1 Jan 2004, «Enllaç».