Está en la página 1de 14

UNIDAD III

PLANIFICACION DE PROCESOS

Procesos
Un proceso (tarea) es una entidad activa que
tiene asociada un conjunto de atributos: cdigo,
datos, stack, registros e identificador nico.
Un proceso requiere recursos (memoria, CPU,
dispositivos d E/S, stack) para su ejecucin.
Un programa es un proceso representado como
una entidad pasiva. Cuando es reconocido por
el sistema operativo y le asigna recursos, ste
se convierte en un proceso.

Planificacin de procesos
Cuando un proceso entra al sistema es
colocado en una cola de trabajos. Una vez
que el proceso se encuentra en memoria
principal y est listo para ejecutar, es es
colocado en la cola de procesos ready.
Los procesos se mueven entre varias colas
durante su vida de ejecucin (ready,
running). El sistema operativo debe ir
seleccionando procesos de dichas colas
siguiendo algn esquema.

Planificacin de procesos
Con la planificacin de procesos se busca :
Garantizar que cada proceso obtenga una proporcin
justa de tiempo de CPU.
Mantener ocupado el CPU.
Minimizar el tiempo de respuesta de los procesos
interactivos.
Maximizar el nmero de tareas procesadas por
milisegundos.

Dentro de la planificacin de procesos


encontramos dos componentes importantes: El
planificador y el despachador.

Planificacin de procesos
Planificador
Es el componente del sistema operativo
que se encarga de seleccionar procesos
para su ejecucin.
Con frecuencia nos encontramos con dos
o ms procesos que son ejecutables desde
el punto de vista lgico. En estos casos el
sistema operativo debe decidir cul de
ellos debe ejecutarse primero.

Planificacin de procesos
Despachador
Es el mdulo del sistema operativo que le
da al proceso seleccionado por el
planificador el control del CPU. Las
funciones que realiza son:
Cambio de contexto.
Cambio a modo de usuario.
Saltar a la direccin apropiada para continuar
con la ejecucin del proceso seleccionado.

Planificacin de procesos
Planificador a largo plazo
Es un sistema batch o por lotes, los procesos son
enviados a dispositivos secundarios (discos) y
mantenidos en la cola de trabajos. El planificador
a largo plazo selecciona un proceso de esta cola
y lo carga en memoria para su ejecucin
(controla el grado de multiprogramacin).
La decisin en cuanto a qu trabajo ser
admitido depender del tipo de informacin que
se tenga. Los criterios pueden incluir prioridad,
tiempo estimado de ejecucin y requerimientos
de E/S.

Planificacin de procesos
Planificador a mediano plazo
Su principal funcin es remover algunos procesos
de memoria y de esta forma reducir el grado de
multiprogramacin.
Ms tarde el proceso podr ser reintroducido en
memoria y su ejecucin continuar. Este
esquema se conoce como swapping. Un proceso
puede ser swapped out de memoria y despus
swapped in por planificador a mediano plazo.

Planificacin de procesos
Planificador a corto plazo
Cuando el CPU esta ocioso, el sistema operativo
mediante el planificador a corto plazo escoge entre los
procesos que se encuentran en memoria listos para
ejecutar y le asigna el CPU a uno de ellos.
Este planificador es invocado cada vez que ocurra un
evento que conlleve la interrupcin del proceso actual
o cuando se quiera dar la oportunidad a algn otro
proceso.
Este planificador escoge procesos constantemente, por
lo que debe ser bastante rpido para evitar
desperdicio de tiempo.

Estados de un proceso
New: El proceso est siendo creado pero an no ha sido
admitido al pool de procesos ejecutables por el sistema
operativo.
Running. El proceso est ejecutando instrucciones. En un
sistema con un solo procesador, slo habr un proceso
en estado running.
Waiting o blocked. El proceso espera por algn evento.
Ready. El proceso est listo para ser ejecutado y espera
para que se le asigne tiempo de CPU.
Termited o Exit: Ha finalizado su ejecucin ya sea de
forma normal o anormal.

Transicin de estados
New a Ready: El sistema operativo mover un proceso
del estado New al estado Ready cuando est
preparado para tomar un proceso adicional.
Ready a Running. Cuando es tiempo de seleccionar un
nuevo proceso para ejecutar, el sistema operativo
selecciona uno de los procesos en el estado Ready
(despachar).
Running a Terminated: El proceso que estaba corriendo
actualmente es terminado por el sistema de operacin
en forma normal o anormal.
Running a Ready: Cuando se agota el tiempo de CPU y
ocurre la interrupcin del timer, este proceso pasa a
estado Ready a esperar una prxima oportunidad.

Transicin de estados
Waiting a Ready: Un proceso realiza esta
transicin cuando ocurre el evento por el cual
estaba bloqueado.
Ready a Exit. Un proceso padre puede terminar
un proceso hijo en cualquier momento, o si el
padre termina, todos los proceso hijos asociados
con el padre deben terminar.
Waiting a Exit: Bajo las mismas condiciones de la
transicin anterior.

Caractersticas de un proceso
suspendido
No est inmediatamente disponible para ejecucin.
Puede o no estar esperando por un evento.
Fue colocado en estado suspendido por un agente,
por l mismo, por un proceso padre o por el
sistema operativo.
No puede ser removido de este estado hasta que
un agente explcitamente ordene la reanudacin y
pase de nuevo a la cola Ready o Waiting.

Razones para suspender un


proceso
Necesidades de swapping. El sistema operativo
necesita liberar suficiente memoria principal para traer
otro proceso que est listo para su ejecucin o graduar
el grado de multiprogramacin.
El sistema operativo puede suspender un proceso en
background, un proceso utilitario o un proceso del cual
sospeche est causando problemas.
Un usuario suspende la ejecucin de un proceso para
propsitos de depuracin o por el uso de un recurso no
disponible.
Un
proceso
puede
ejecutarse
peridicamente
(monitorear el sistema) y suspenderse mientras espera
el prximo intervalo de tiempo de ejecucin.

También podría gustarte