PROCESOS
Un programa en ejecución
H. M. Deitel.
El concepto central en cualquier sistema operativo es el proceso: una abstracción de un programa en ejecución.
Andrew S. Tanenbaum.
BLOQUE DE CONTROL DEL PROCESO (P.C.B).
(Gp:) Es una Estructura de datos, que permite al Sistema Operativo manejar la información relacionada con cada uno de los procesos. Esto incluye:
Estado Actual del Proceso.
Identificador del Proceso.
Un apuntador hacia el padre del proceso.
Apuntadores a los hijos del proceso.
BLOQUE DE CONTROL DE PROCESO(P.C.B).
Prioridad del Proceso.
Información de Administración de memoria del proceso.
Apuntadores a los recursos asignados al proceso.
Un área para salvaguarda de los registros relacionados con la
ejecución del proceso.
El Procesador en que se está ejecutando el proceso
(en un sistema de procesadores múltiples).
(Gp:) En
ejecución
(Gp:) Suspendido
Bloqueado
(Gp:) Listo
(Gp:) Bloqueado
(Gp:) Suspendido
Listo
(Gp:) Terminación de la operación
de E/S o del evento
(Gp:) S
U
S
P
E
N
D
E
R
(Gp:) R
E
A
N
U
D
A
R
(Gp:) S
U
S
P
E
N
D
E
R
(Gp:) R
E
A
N
U
D
A
R
(Gp:) SUSPENDER
(Gp:) Terminación de la operación
de E/S o del evento
(Gp:) Despachar
(Gp:) Expiración
del tiempo
(Gp:) Espera de E/S
o de algún
evento
(Gp:) ESTADOS DE UN PROCESO
(Gp:) E A
S C
T TA ID VO OS S
(Gp:) Estados
Pasivos
Operaciones sobre Procesos
* Crear un proceso.
* Destruir un proceso.
* Cambiar la prioridad de un proceso.
* Bloquear un proceso.
* Despachar un proceso.
* Permitir la comunicación entre procesos.
* Suspender un proceso.
* Reanudar un proceso.
Planificación de Procesos.
Cuando son ejecutables varios procesos,
el sistema operativo debe decidir cuál conviene
ejecutar si el CPU se encuentra disponible.
El elemento del sistema quien toma esta
decisión se llama PLANIFICADOR (Scheduling)
y el algoritmo del cual hace uso se denomina
ALGORITMO PLANIFICADOR.
Tipos de Planificación
No Apropiativa:
Una vez que el CPU ha sido asignado a un
proceso, ya no se le puede arrebatar.
Ejemplos: FIFO, Primer trabajo más corto
Tipos de Planificación
Apropiativa:
Cuando a un proceso, el sistema operativo
le puede quitar el CPU antes asignado.
Ejemplos: Round Robin, Prioridades,
Tiempo restante más corto,
Colas múltiples.
Objetivos de la Planificación
1. Los procesos deben tratarse de la misma forma.
2. Evitar el aplazamiento indefinido.
3. Atender la mayor cantidad de procesos por unidad
de tiempo.
4. Mantener ocupados los recursos del sistema.
5. Lograr un equilibrio entre la respuesta y el uso de los
recursos.
6. Una tarea debe ejecutarse aproximadamente en el
mismo tiempo, cada vez que se ejecute.
1. Si el proceso utiliza exhaustivamente el CPU
(CPU Bound) o los diversos dispositivos (I/O
Bound).
2. Importancia del proceso. Tipo de procesamiento.
3. Cuánto tiempo real de ejecución lleva un proceso
y cuánto tiempo estimado necesita para terminar.
4. Frecuencia con la que el proceso utiliza la
memoria principal.
Criterios de Planificación
Niveles de Planificación
Planificación de Alto nivel:
Selecciona los trabajos que deben admitirse en el sistema.
Tareas:
1. Administrar todos los recursos del sistema excepto
el CPU.
2. Mantiene las colas de procesos bloqueados y
suspendidos.
3. Controla la creación de procesos.
4. Maneja el nivel de multiprogramación.
Niveles de Planificación
Planificación de nivel intermedio:
Determina cuáles procesos pueden competir por el CPU.
Tareas:
1. Equilibrar la admisión de trabajos en el sistema
con la asignación del CPU a dichos procesos.
2. Nivelar la carga del sistema (procesos activos
y pasivos)
Página siguiente |