Você está na página 1de 30

El planificador es el módulo del sistema operativo que

decide qué proceso se debe ejecutar, para ello usa un


algoritmo de planificación que debe cumplir con los
siguientes objetivos:

 Imparcialidad.
 Política justa.
 Eficiencia: mantener la CPU ocupada en lo posible el
mayor tiempo con procesos de usuario.
 Minimizar el tiempo de espera de usuarios.
 Maximizar el número de procesos ejecutados.
 Tiempo de respuesta excelente.
 Predecibilidad en la ejecución.
 Equilibrio en el uso de los recursos.
Antes de comenzar a describir los respectivos
algoritmos de planificación, es importante
conocer dos conceptos relacionados. Hay dos
categorías generales:

 Nonpreemptive scheduling: También


conocido como cooperative multitasking.
Una vez que el proceso pasa al estado de
ejecución, continúa ejecutando hasta que
termina, se bloquean en espera de una E/S o
al solicitar algún servicio del sistema.
 Preemptive scheduling: Generalmente
conocida como política de planificación por
torneo. El proceso que se está ejecutando
actualmente puede ser interrumpido y
pasado al estado de listos por el sistema
operativo. La decisión de sustituirlos por otro
proceso puede llevarse a cabo cuando llega
un nuevo proceso, cuando se produce una
interrupción que lleva a un proceso
bloqueado al estado listo o periódicamente,
en función de una interrupción del reloj.
La idea de este algoritmo es separar los procesos con diferentes
características en cuanto a sus ráfagas de CPU. Si un proceso gasta
demasiado tiempo en CPU, se le pasará a una cola con menor
prioridad. Este esquema deja a los procesos limitados por E/S y los
procesos interactivos en las colas de más alta prioridad.

En general, un planificador de colas multinivel está definido por los


siguientes parámetros:
 El número de colas.
 El algoritmo de planificación para cada cola
 El método empleado para determinar cuándo se debe promover
un proceso a una cola de mayor prioridad.
 El método empleado para determinar cuándo se debe promover
un proceso a una cola de menor prioridad.
 El método empleado para determinar en cuál cola ingresará un
proceso cuando necesite servicio.
La definición de un planificador de
colas multinivel con realimentación
lo convierte en el algoritmo de
planificación de la CPU más
general ya que se puede configurar
para adaptarlo a cualquier sistema
específico que se este diseñando.
Desdichadamente, se requiere
alguna forma de seleccionar valores
para todos los parámetros de manera que se obtenga el mejor
planificador posible.

Aunque este esquema es el más general, también es el más


complejo.
Colas Quantum
Q1 8 , FSFC
Q2 16, FSFC
Q3 FSFC
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

PROCESO1 PROCESO2 PROCESO3


Q1 8
Prioridad 1
Q2 16
Prioridad 2
Q3 FCFS
Prioridad 3
PROCESO1 PROCESO2 PROCESO3
PROCESO Quantum Quantum inicial
P1 60 0
P2 22 0
P3 8 0
P4 28 34
P5 4 44
Quantum 0
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(60) P2 (22) P3 (8)


Quantum 8
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(52) P2 (22) P3 (8)


Quantum 16
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(52) P2 (14) P3 (8)


Quantum 24
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(52) P2 (14) P3 (0)


Quantum 40
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(36) P2 (14) P3 (0) P4 (18)


Quantum 48
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(36) P2 (14) P3 (0) P4 (10) P5 (4)


Quantum 52
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(36) P2 (14) P3 (0) P4 (10) P5 (0)


Quantum 66
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(36) P2 (0) P3 (0) P4 (10) P5 (0)


Quantum 76
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(36) P2 (14) P3 (0) P4 (0) P5 (0)


Quantum 112
Q1 8
Prioridad 1
Q2 16
Prioridad 2

Q3 FCFS
Prioridad 3

P1(0) P2 (0) P3 (0) P4 (0) P5 (0)


Es un algoritmo complejo ya que
que debe de
para realizar la correcta
administración de los recursos del sistema.

Además,
de menor prioridad y viceversa,
así como también separa los procesos en
función de características para
ya que tiene un
mecanismo de que evita el
.

Você também pode gostar