Sei sulla pagina 1di 19

* Faubla Sacon Miguel * Morrillo Saltos John

La ejecucin de procesos consta de un ciclo de ejecucin de la CPU y espera de E/S. Los procesos se alternan entre estos dos estados. La ejecucin de un procesos comienza con una rfaga o serie (burts) de la CPU. Esta es seguida por una rfaga de E/S que es seguida por otra rfaga de la CPU, luego otra de E/S, y as sucesivamente. Con el tiempo, la rfaga final de la CPU termina con una solicitud al sistema para terminar la ejecucin, y no con otra serie de E/S.

Siempre que la CPU queda ociosa o inactive, el Sistema operativo debe seleccionar unos de los procesos de la cola listos para su ejecucin. El proceso de seleccin es llevado a cabo por el planificador de corto plazo o planificador de la CPU. El cual selecciona entre los procesos en memoria que estn listos para ejecutarse y asigna la CPU a unos de ellos.

Las decisiones de planificacin de la CPU tiene lugar en las siguientes cuatro circunstancias: 1. Cuando un proceso conmuta del estado de ejecucin al estado de espera(por ejemplo, en una solicitud de E/S, o al invocar una espera para la terminacin de uno de los procesos hijos) 2. Cuando un proceso cambia de estado de ejecucin al estado de listo (por ejemplo cuando ocurre una interrupcin). 3. Cuando un proceso pasa del estado de espera al estado listo(por ejemplo en la terminacin de una operacin de E/S) 4. Cuando un proceso termina.

Este componente es el modulo que da el control de la CPU al proceso seleccionado por el planificador de corto plazo. Esta funcin comprende lo siguiente:

Conmutacin de contexto. Conmutacin de modo de usuario. Saltar a la localidad apropiada en el programa del usuario para reiniciar el programa.

Los criterios que se emplean incluyen los siguientes:


Utilizacin de la CPU: queremos mantener a la CPU tan ocupada como sea posible. La utilizacin de la CPU puede estar entre 0 y 100 por ciento. Rendimiento: si la CPU est ocupada ejecutando procesos, entonces se est realizando trabajo. Tiempo de entrega: desde el punto de vista de un proceso en particular, el criterio ms importante es cunto tiempo se requiere para ejecutar dichos procesos. Tiempo de espera: el algoritmo de planificacin de la CPU no afecta la cantidad de tiempo durante el cual el proceso se ejecuta o realiza operaciones de E/S, solo afecta la cantidad de tiempo que un proceso consume esperando en la cola de listos. Tiempo de respuesta: en un sistema interactivo, el tiempo de entrega tal vez no sea el mejor criterio. A menudo un proceso puede producir alguna salida acelerada y continuar calculando nuevos resultados mientras los resultados previos se estn entregando como salida al usuario.

El algoritmo ms sencillo de la planificacin de la CPU es el del primero en llegar, primero en ser atendido (FCFS). Con este esquema la CPU se asigna al primer proceso que la solicite. Cuando un proceso entra a la cola de los listos, su PCB se enlaza al final de la cola. Cuando la CPU est libre, se asigna al proceso que se encuentra a la cabeza de la cola; el proceso que est en ejecucin se remueve entonces de dicha cola. Sin embrago el tiempo de espera con la poltica FCFS es bastante largo. Considere el siguiente conjunto de procesos que llegan en el instante 0, con el tiempo de trafaga de la CPU en milisegundos.

Si los procesos llegan en el orden de P1 p2 p3 y se atienden bajo el orden FCFS obtenemos este resultado.

El tiempo de espera es de 0 milisegundos para el proceso P1, 24 milisegundos para el proceso para el proceso P2, y 27 milisegundos para el proceso P3. De esta forma el tiempo de espera promedio es (0+24+27)/3=17 milisegundos.

De otra forma, si los procesos llegan en el orden de P2 P3 y P1, los resultados sern como se muestra en la siguiente grfica:

El tiempo de espera promedio es ahora (6+0+3)/3=3 milisegundos. Esta reduccin es significativa. Por lo tanto, el tiempo de espera promedio bajo la FCFS por lo general no es mnimo, y puede variar de forma importante si el tiempo de rfaga de los procesos varan considerablemente.

El algoritmo de primero el trabajo ms corto (SJF), es aquel que asocia a cada proceso la longitud de su siguiente rfaga de CPU. Cuando la CPU est disponible se le asigna al proceso que tiene la rfaga siguiente ms pequea de CPU. Si dos procesos tienen la misma longitud de rfaga siguiente, se emplea la planificacin FCFS para tomar la decisin. Considere el siguiente conjunto de procesos, con el tiempo de rfaga de la CPU dado en milisegundos

Empleando la planificacin SJF, planificaramos estos procesos de acuerdo con la siguiente grfica.

El tiempo de espera es de 3 milisegundos para el proceso P1, 16 milisegundos para el proceso P2 y 9 milisegundos para el proceso P3 y 0 milisegundos el P4. Por lo tanto, el tiempo de espera promedio es (3+16+9+0)/4=7 milisegundos. Si estuviramos usando el esquema de planificacin FCFS, entonces el tiempo de espera promedio seria de 10.25 milisegundos

Planificacin con prioridad


Una prioridad est asociada a cada proceso, y la CPU se asigna al proceso con la prioridad ms alta; los procesos con igual prioridad de escogen segn el orden FCFS. Las prioridades se pueden definir: Internamente: Utilizan cantidades mesurables para calcular la prioridad de un proceso. Lmites de tiempo Requerimientos de memoria Numero de archivos abiertos Externamente: Se fijan mediante criterios externos al SO Importancia del proceso Tipo y cantidad de fondos Factores polticos

Planificacin Round-Robin (RRAlgoritmo de planificacin por turnos)


Diseado para sistemas de tiempo compartido Similar a la planificacin FCFS pero con apropiacin Unidad de tiempo: quantum (10 a 100 milisegundos) La cola de procesos listos es tratada como circular

El planificador de la CPU asigna la CPU a cada proceso durante un intervalo de hasta un quantum mediante un temporizador. Si un proceso tarda: menos de un quantum: el mismo proceso libera la CPU pasando al siguiente proceso Si un proceso tarda: ms de un quantum: el temporizador se apaga y se provoca una interrupcin, en la cual mediante una conmutacin de contexto el proceso ser puesto al final de la cola para seguir con otro proceso.

Planificacin de colas de niveles mltiples

Situaciones en las cuales los procesos se clasifican en grupos diferentes con distintos requerimientos de tiempo de respuesta, prioridades externas o internas y por lo tanto diversas necesidades de planificacin. Divide la cola de listos en varias colas separadas asignando los procesos en cada cola en base a sus prioridades. Cada cola tiene su propio algoritmo de planificacin. Planificacin por prioridad fija apropiativa: Debe existir planificacin entre las colas, es decir que una cola puede tener una prioridad absoluta solo otra cola de procesos. Las colas tambin pueden trabajar con porciones de tiempo, asignndole a cada una un porcentaje de la CPU.

Planificacin con colas de niveles mltiples y retroalimentacin


En

esta planificacin un proceso se puede mover entre colas, separando las colas segn sus caractersticas de rfaga de CPU. Si un proceso utiliza demasiado tiempo del CPU este es movido a una cola de menor prioridad. En este tipo de planificacin tambin se efecta el envejecimiento, moviendo procesos a colas superiores.

Planificacin de procesadores mltiples.


Quiere decir que si estn disponibles varios procesadores puede ocurrir una comparticin de carga, es decir cada procesador se dedicara a un proceso diferente del otro sin alterar su ejecucin, esto es gracias a varios enfoques de los multiprocesos uno de ellos el es de multiprocesamiento simtrico donde cada procesador se planifica a si mismo, es decir toma un proceso ya listo y lo ejecuta.

Planificacin en tiempo real.


Bien

puede ejecutar un proceso en tiempo real o simplemente rechaza la solicitud de ejecucin bajo la reservacin de recursos donde requiere el tiempo que necesita para ejecutar algn proceso del sistema operativo. se tiene el tiempo real suave que es menos restricto su funcionalidad requiere un diseo cuidadoso del planificador y los aspectos relacionados del sistema operativo.

Tambin

Planificacin de hilos
Como se conoce los hilos permiten que un solo proceso tenga varios hilos de control, entonces est4e de aqu en una planificacin toma un esquema conocido como planificacin local de procesos es decir a nivel local de la aplicacin , al mismo tiempo por otra parte el KERNEL emplea una planificacin global del sistema para decidir que hilo del kernel va a planificar.

Planificacin de Solaris 2
Este unas una planificacin de procesos basada en prioridades, manteniendo las siguientes planificaciones Orden de prioridad Planificacin de tiempo real Planificacin del sistema Planificacin de Tiempo compartido e interactiva Es decir cada LWP hereda la clase de planificacin y la prioridad del proceso padre y es capaz de crear nuevos LWP segn sea necesario.

Potrebbero piacerti anche