2.5 Bloque de Control de Procesos

 

 Un proceso se representa desde el punto de vista del sistema operativo, por un conjunto de datos donde se incluyen el estado en cada momento, recursos utilizados, registros, etc., denominado Bloque de Control de Procesos (PCB).  

Los objetivos del bloque de control de procesos son los siguientes:

·       Localización de la información sobre el proceso por parte del sistema operativo.

·      Mantener registrados los datos del proceso en caso de tener que suspender temporalmente su ejecución o reanudarla.

 

La información contenida en el bloque de control es la siguiente:

·      Estado del proceso. Información relativa al contenido del controlador del programa (Program Counter, PC), estado de procesador en cuanto a prioridad del proceso, modo de ejecución, etc., y por ultimo el estado de los registros internos de la computadora.

·       Estadísticas de tiempo y ocupación de recursos para la gestión de la planificación del procesador.

·       Ocupación de memoria interna y externa para el intercambio (swapping).

·       Recursos en uso (normalmente unidades de entrada/salida).

·       Archivos en uso.

·          Privilegios.

 

Estas informaciones se encuentran en memoria principal en disco y se accede a ellas en los momentos en que se hace necesaria su actualización o consulta. Los datos relativos al estado del proceso siempre se encuentran en memoria principal.

Existe un Bloque de Control de Sistema (SCB) con objetivos similares al anterior y entre los que se encuentra el enlazado de los bloques de control de procesos existentes en el sistema.

El cambio de contexto se producirá en caso de ejecución de una instrucción privilegiada, una llamada al sistema operativo o una interrupción, es decir, siempre que se requiera la atención de algún servicio del sistema operativo.

 

 

CREACIÓN DE PROCESOS

 

Cuando se añade un nuevo proceso a los que maneja el sistema operativo de manera regular, éste construye la estructura de datos que se usa para manejar el proceso y localiza el espacio de dirección que va a usar el proceso. Estas acciones construyen la creación de un nuevo proceso.

 

        La siguiente tabla muestra los cuatro eventos comunes que conducen a la creación de un proceso.

En forma tradicional, todos los procesos los creaba el sistema operativo de una manera transparente para el usuario o para el programa de aplicación y esto todavía se encuentra en muchos sistemas operativos contemporáneos. No obstante, puede ser útil permitir que un proceso provoque la creación de otro proceso. Por ejemplo, un proceso de aplicación puede crear otro proceso para recibir datos que genera la aplicación y organizar los datos en una forma adecuada para el análisis posterior. El nuevo proceso corre en paralelo a la aplicación y se activa de vez en cuando si  están disponibles los nuevos datos. Este arreglo puede ser muy útil en la estructura de la aplicación. Otro ejemplo, es el de un proceso servidor (servidor de impresión, servidor de archivos) puede crear un nuevo proceso para cada solicitud que maneja. Cuando el sistema operativo se aboca a la creación de un proceso ante la solicitud explícita de otro proceso, la acción se denomina creación de proceso.

Cuando un proceso crea otro proceso, el que realiza la creación se denomina proceso padre y el creado se llama proceso hijo. De manera típica, los procesos “relacionados” necesitarán comunicarse y cooperar uno con otro. Alcanzar esta cooperación es una tarea difícil para el programador mas no imposible.

       

Hosted by www.Geocities.ws

1