Ciclo de vida de un proceso y hebras en sistemas operativos

Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones

Escrito el en español con un tamaño de 3,25 KB

Arranque del sistema operativo

Se pulsa el botón reset. El CP toma el valor de la dirección correspondiente a la ROM. Se comienza a ejecutar el programa de arranque alojado en modo privilegiado, y con memoria real. En un PC la ROM contiene, además del iniciador, el programa BIOS. Se comprueba el sistema. Lectura de disco y almacenamiento en RAM del programa Boot. El programa Boot lee el SO de disco y lo carga en RAM. Cesión al SO.

Activación del sistema operativo

Motivos: Interrupción por llamada al sistema para solicitar servicios del SO. Interrupción producida por periféricos, reloj u otro procesador. Excepciones del SW o HW.

Tipos de servicios

Síncronos: Cuando se cede el control al SO para que realice una tarea, se espera a que esta termine. Asíncronos: El servicio se ejecuta de forma concurrente con el proceso, y cuando este acaba el SO lo notifica.

Procesos

Un proceso es un programa en ejecución, una unidad de procesamiento gestionada por el SO. Los procesos se organizan en jerarquía, todos los procesos tienen un padre. Además pueden pertenecer a un grupo de procesos. El proceso INIT empieza en modo superusuario y se encarga de arrancar el sistema, su PID = 1 y al acabar el INIT se pasa al modo privilegiado.

Estado del procesador

El estado del registro está formado por el contenido de todos sus registros. Registros accesibles en modo usuario: Registros generales, contador de programa, punteros o punteros de pila, parte del registro de estado accesible en modo usuario. Registros especiales accesibles en modo privilegiado: Parte del registro de estado accesible en modo privilegiado, registros de control de memoria.

BCP

Bloque de Control de Proceso. Almacena información de: Identificación, PID proceso, PID padre, UID real, GID real, UID efectiva, GID efectiva, identificadores de grupos de proceso. Estado del procesador (copia de los registros), información de control del proceso, descripción de sus regiones de memoria, recursos asignados, comunicación con otros procesos, temporizador, contabilidad.

Hebras

Cada hebra tiene su propia información sobre el contexto de su ejecución (BCT): Estado de procesador, pila, estado de la hebra, prioridad de ejecución. Cada hebra comparte con las de su mismo proceso (BCP): Espacio de memoria, variables globales, ficheros abiertos, procesos hijos, temporizadores, señales y semáforos y contabilidad.

Diferencias entre bloquear e ignorar una señal

Ignorar la señal implica que el proceso la recibe y la descarta y bloquear una señal sería que el proceso no la recibe y queda pendiente de la entrega hasta que se desbloquee. Son acciones compatibles y no excluyentes.

Información conservada después de llamar a los servicios fork y exec

Fork: armado, máscara, señales pendientes y alarmas. Exec: armado, máscara, señales pendientes y alarmas.

Conclusiones

Los sistemas operativos y la gestión de procesos y hebras son fundamentales para el funcionamiento de los sistemas informáticos. Comprender el ciclo de vida de un proceso y las diferencias entre hebras de nivel de usuario y de nivel de núcleo es esencial para el desarrollo de aplicaciones y sistemas estables y eficientes.

Entradas relacionadas: