Está en la página 1de 26

Planificación de la CPU

Contenido de la clase
• Conceptos básicos.
• Ciclo de ráfaga y de e/s.
• Planificador de la cpu.
• Algoritmos de planificación:
• FCFS, SJF, por prioridad, Round Robin
Logro de aprendizaje

Al final de la sesión, el alumno desarrolla


ejercicios mediante los diferentes tipos de
planificación que tiene la CPU.

Datos/Observaciones
La planificación es el procedimiento por el cual el sistema operativo
selecciona que proceso debe atender.

La Multiprogramación permite que varios procesos se conserven en la


memoria a la vez, y cuando uno de ellos tiene que esperar, el
sistema operativo inicia la atención de otro proceso, evitando que la UCP
pierda tiempo en espera.

Concepto básico
La planificación del CPU es la base de los
sistemas operativos multiprogramados.
Mediante la conmutación del CPU entre
distintos procesos, el sistemas operativo
puede hacer que la computadora sea más
productiva.

Planificador: Elemento del SO que


determina el orden en que se deben atender
las solicitudes de uso de procesador por
parte de los distintos procesos
En un sistema monoprocesador, sólo puede ejecutarse un proceso cada vez.

Cualquier otro proceso tendrá que esperar hasta que la CPU quede libre y
pueda volver a planificarse.

El objetivo de la multiprogramación es tener continuamente varios procesos


en ejecución, con el fin de maximizar el uso de la CPU.

Que es planificar
 Equidad: todos los procesos deben atenderse

 Eficacia: mantener ocupada la CPU un 100% del tiempo

 Tiempo de respuesta: minimizar el tiempo de respuesta al


usuario en la atención del proceso.

 Rendimiento: maximizar el número de procesos atendidos

OBJETIVOS DE LA PLANIFICACION
Conforme los procesos entran en el sistema, se colocan en una
cola de trabajos en la memoria principal.
Esta lista de procesos contendrá apuntadores al primer y ultimo
proceso de bloque. Cada bloque tiene un campo apuntador que
indica el siguiente proceso que debe ejecutarse de la cola de los
procesos listos.

COLAS DE PLANIFICACION
Diagrama de colas del CPU
La ejecución de un proceso consiste en un ciclo de ejecuciones de la unidad
central de proceso y espera por parte de la E/S. Los procesos se alternan entre
estos dos estados.
La ejecución del proceso se inicia con una ráfaga de la CPU , a esta le sigue
otra ráfaga de E/S, así sucesivamente.
Las duraciones de estas ráfagas se han medido y aunque varían
considerablemente de un proceso a otro, también se considera las ráfagas
entre computadores

Ciclo de Ráfagas de CPU y E/S


 Los procesos alternan entre estos dos estados.
 La ejecución del proceso comienza con una ráfaga de CPU.
 Esta va seguida de una ráfaga de E/S.
 A la cual sigue otra ráfaga de CPU, luego otra ráfaga de E/S, etc.
Finalmente, la ráfaga final de CPU concluye con una solicitud al sistema
para terminar la ejecución.
 La duración de las ráfagas de CPU varían enormemente de un proceso a
otro y de una computadora a otra.

Ciclo de Ráfagas de CPU y E/S


Planificación a corto plazo
Selecciona el siguiente proceso a ejecutar.
Planificación a medio plazo
Selecciona qué procesos se añaden o se retiran de memoria
principal.
Planificación a largo plazo
Realiza el control de admisión de procesos a ejecutar.

Niveles de Planificación
No apropiativa.
El proceso en ejecución conserva el uso de la CPU mientras
lo desee.
• Apropiativa.
El sistema operativo puede expulsar a un proceso de la
CPU.

Tipos de Planificación
 Utilización de la CPU.
 Tasa de procesamiento.
 Tiempo de ejecución o retorno.
 Tiempo de espera.
 Tiempo de respuesta.

Criterios de Planificación
 Deseamos mantener la CPU tan ocupada como
sea posible.
 La utilización de CPU se define en un rango que va
del 0% al 100 %.
 En un sistema real, debe variar entre el 40%
(sistema ligeramente cargado) y el 90% (sistema
intensamente utilizado).

Utilización de la CPU
Es una medida de la cantidad de trabajo de la CPU.
Es el número de procesos que se completan por unidad de
tiempo.
Para procesos de larga duración, este valor puede ser de un
proceso por hora; para transacciones cortas, puede ser de 10
procesos por segundo.

Tasa de Procesamiento
A unproceso individual, le importa cuánto tarda en ejecutarse.
Es el intervalo que va desde el instante en que se ordena su ejecución hasta el
instante en que se completa.
Ese tiempo de ejecución es la suma de los períodos que el proceso invierte
en:
 esperar para cargarse en memoria
 esperar en la cola de preparados
 ejecutarse en la CPU
 realizar las operaciones de E/S.

Tiempo de ejecución o retorno


Es la suma de los períodos invertidos en esperar en la cola de procesos
preparados.
El algoritmo de planificación de la CPU no afecta a la cantidad de tiempo
durante la que un proceso se ejecuta o hace una operación de E/S; afecta
sólo al período de tiempo que un proceso invierte en esperar en la cola de
procesos preparados.

Tiempo de espera
Es el tiempo que el proceso tarda en empezar a responder, no
el tiempo que tarda en enviar a la salida toda la información de
respuesta.
Generalmente, el tiempo de respuesta está limitado por la
velocidad del dispositivo de salida.

Tiempo de respuesta
Es decidir a qué proceso de la cola de procesos preparados debe
asignársele la CPU. Los mas usados son:
 FCFS (primero en llegar primero en servirse). FIFO
 SJF (primero el trabajo mas corto)
 Por prioridad
 Round Robin (Método de selección equitativa)

Algoritmos de Planificación
Es el algoritmo más simple de planificación de la CPU.
Con este esquema, se asigna primero CPU al proceso que primero la
solicite.
Puede ocasionar que procesos largos hagan esperar a procesos cortos y que procesos no
importantes hagan esperar a procesos
importantes. Es más predecible que otros esquemas. No puede garantizar buenos tiempos de
respuesta interactivos.
Suele utilizarse integrando a otros esquemas, por ejemplo, de la siguiente manera:
• Los procesos se despachan con algún esquema de prioridad.
• Los procesos con igual prioridad se despachan “FIFO”.

Algoritmo FCFS
Asocia a cada proceso la duración de su siguiente ráfaga de
CPU. Cuando la CPU está disponible, se asigna al proceso que
tiene la siguiente ráfaga de CPU más corta

Algoritmo SJF
A cada proceso se le asocia una prioridad y la CPU se asigna al proceso que
tenga la prioridad más alta.
Las prioridades también pueden ser asignadas dinámicamente por el sistema
para lograr ciertas metas relacionadas con el
procesador o la E/S.
Se asigna la CPU al proceso con mayor prioridad , la planificación puede ser
expulsiva y no expulsiva.
En caso que exista una igualdad en prioridad se aplicara FIFO

Algoritmo Por Prioridad


A cada proceso se le asocia una prioridad y la CPU se asigna al proceso que tenga la
prioridad más alta.
• Asignación del proceso al procesador rotatoria.
• Equitativo (mejor hacerlo por uid y no por proceso)
• Uso en sistemas de tiempo compartido.
• Se asigna un tiempo máximo de procesador (rodaja).
• Procesos organizados en cola circular, eligiéndose para su ejecución el proceso cabecera
de la cola.
• Un proceso permanecerá en ejecución hasta que ocurra lo siguiente:
• El proceso pasa a estado bloqueado. Llamada al SO.
• El proceso consume su tiempo de rodaja.

Algoritmo Round Robin


Recordemos
Qué entendemos por planificación del CPU
Cuales son los tipos de algoritmos
FIFO
SJF
Prioridad
Round Robin

RESUMEN

También podría gustarte