Objetivo :
- Comprender el concepto de proceso, como un programa de sistema que tiene un modelo de registros y valores particulares de la computadora y que conduce a la multiprogramación.
- Comprender el sistema como una colección de procesos que ejecutan código del sistema de manera concurrente con programas del usuario.
Conceptos de Proceso
- Un sistema operativo ejecuta una variedad de programas:
–Tareas o programas de usuario en Tiempo Compartido
- Los términos tarea y proceso se usan casi como sinónimos y son la unidad de trabajo de los sistemas modernos.
- Proceso – un programa en ejecución;
- Un proceso incluye:
–Stack.
–Sección de Datos.
Bloque de Control del Proceso (PCB)
Información asociada con cada proceso:
•Estado del proceso.
•Program counter.
•Registros del CPU.
•Información para la coordinación del CPU.
•Información para la Administración de Memoria.
•Información para la Contabilidad.
•Información del Estado de la E/S.
Estados del Proceso
•Cuando un proceso se ejecuta, este cambia de estado:
–Nuevo: El proceso se esta creando.Cargador- Ligador.
–Listo: El programa esta en la Memoria Principal en espera de ser asignado a un proceso.
–Corriendo: Las instrucciones se están ejecutando en el CPU.
–Esperando: El proceso esta en el Disco en espera de que ocurra algún evento.
–Terminado: El proceso ha finalizado su ejecución y es enviado al Disco.
Diagrama de Estado del Proceso
Colas de la Coordinación de Procesos
- Cola de tareas – conjunto de todos los procesos en el sistema.
- Cola de procesos listos – conjunto de todos los procesos residentes en la memoria-principal, listos y en espera para ejecutarse.
- Cola de dispositivos –conjunto de todos los procesos en espera de un dispositivo de E/S.
- Migración de los Procesos entre las distintas colas.