planificaci - sistemas...

73
Introducci ´ on Scheduling Mechanisms Selecci ´ on de Estrategia Estrategias No-apropiativas Estrategias Apropiativas Planificaci ´ on Sistemas Operativos Andr ´ es Felipe Barco Santa Pontificia Universidad Javeriana Febrero de 2010 Andr ´ es Felipe Barco Santa Planificaci ´ on

Upload: others

Post on 28-Jun-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

PlanificacionSistemas Operativos

Andres Felipe Barco Santa

Pontificia Universidad Javeriana

Febrero de 2010

Andres Felipe Barco Santa Planificacion

Page 2: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Concurrencia

Tan solo apariencia

Dado que todas las maquinas abstractas pareciecen queestuvieran ejecutandose a la misma vez, se dice que seejecutan concurrentemente: existe una apariencia deoperaciones simultaneas gracias a la alta velocidad demultiplexacion de la CPU.

Andres Felipe Barco Santa Planificacion

Page 3: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Concurrencia

Tan solo apariencia

Dado que todas las maquinas abstractas pareciecen queestuvieran ejecutandose a la misma vez, se dice que seejecutan concurrentemente: existe una apariencia deoperaciones simultaneas gracias a la alta velocidad demultiplexacion de la CPU.

Esta concurrencia es la que brinda la capacidad demultiprogramacion.

Andres Felipe Barco Santa Planificacion

Page 4: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

La planificacion

Scheduler

La planificacion hace referencia a la tarea de manejar la CPUcompartiendola con una comunidad de procesos/hilos listospara correr.

Andres Felipe Barco Santa Planificacion

Page 5: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

La planificacion

Scheduler

La planificacion hace referencia a la tarea de manejar la CPUcompartiendola con una comunidad de procesos/hilos listospara correr.

scheduler policy: determina cuando un hilo debe serdesalojado de la CPU y cual hilo listo debe serasignado a continuacion.

Andres Felipe Barco Santa Planificacion

Page 6: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

La planificacion

Scheduler

La planificacion hace referencia a la tarea de manejar la CPUcompartiendola con una comunidad de procesos/hilos listospara correr.

scheduler policy: determina cuando un hilo debe serdesalojado de la CPU y cual hilo listo debe serasignado a continuacion.

scheduler mechanism: determina como un manejador deprocesos puede determinar que es tiempo demultiplexar la CPU, y como un hilo puede serasignado y removido de la CPU (cambios decontexto).

Andres Felipe Barco Santa Planificacion

Page 7: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Planificacion de hilo

Figura: Tomado de Operating Systems, 3 Edition, Gary Nutt

Andres Felipe Barco Santa Planificacion

Page 8: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Abandonando la CPU

Existen cuatro posibles razones para que un hilo abandone laCPU.

Andres Felipe Barco Santa Planificacion

Page 9: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Abandonando la CPU

Existen cuatro posibles razones para que un hilo abandone laCPU.

1 El hilo completa su ejecucion.

Andres Felipe Barco Santa Planificacion

Page 10: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Abandonando la CPU

Existen cuatro posibles razones para que un hilo abandone laCPU.

1 El hilo completa su ejecucion.2 El hilo realiza peticion de recursos y este no

esta disponible.

Andres Felipe Barco Santa Planificacion

Page 11: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Abandonando la CPU

Existen cuatro posibles razones para que un hilo abandone laCPU.

1 El hilo completa su ejecucion.2 El hilo realiza peticion de recursos y este no

esta disponible.3 El hilo decide ceder la CPU voluntariamente.

Andres Felipe Barco Santa Planificacion

Page 12: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

ConcurrenciaLa planificacionPlanificacion de hiloAbandonando la CPU

Abandonando la CPU

Existen cuatro posibles razones para que un hilo abandone laCPU.

1 El hilo completa su ejecucion.2 El hilo realiza peticion de recursos y este no

esta disponible.3 El hilo decide ceder la CPU voluntariamente.4 El hilo es desalojado de la CPU porque el sistema decide

detener el hilo hasta nueva orden.

Andres Felipe Barco Santa Planificacion

Page 13: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

En el hardware

Los mecanismos

Los mecanismos de planificacion de la CPU dependen decaracterısticas en el hardware, la mas importante es si lacomputadora esta o no configurada con un dispositivo de reloj.

Andres Felipe Barco Santa Planificacion

Page 14: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

En el hardware

Los mecanismos

Los mecanismos de planificacion de la CPU dependen decaracterısticas en el hardware, la mas importante es si lacomputadora esta o no configurada con un dispositivo de reloj.

Las demas funcionalidades del scheduler son implementadasen software.

Andres Felipe Barco Santa Planificacion

Page 15: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

Organizacion de planificacion de procesos

Conceptualmente el scheduler esta dividido en tres parteslogicas.

Andres Felipe Barco Santa Planificacion

Page 16: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

Organizacion de planificacion de procesos

Conceptualmente el scheduler esta dividido en tres parteslogicas.

Encolador

Cuando un proceso cambia su estado a listo, su descriptor seactualiza para relfejar el cambio. El enqueuer asigna unpuntero del descriptor en la lista de procesos que esperan laCPU. El enqueuer puede computar una prioridad en el hilo opuede hacerse al momento de sacarlo de la lista.

Andres Felipe Barco Santa Planificacion

Page 17: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

Organizacion de planificacion de procesos

Cambio de Contexto

Cuando el scheduler decide cambiar de un proceso a otro parael control de la CPU, el context switcher guarda todos los datosde los registros de la CPU (PC, IR, condition status, processorstatus, ALU status) en el descriptor del hilo.

Andres Felipe Barco Santa Planificacion

Page 18: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

Organizacion de planificacion de procesos

Despachador

El dispatcher es invocado despues de que el proceso de laaplicacion ha sido desalojado de la CPU (el contexto deldispatcher es cargado para ejecutarse). Posteriormenteselecciona un hilo que este en lista de espera y le asigna laCPU (haciendo otro cambio de contexto desde el mismo haciael hilo).

Andres Felipe Barco Santa Planificacion

Page 19: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

En el hardwareOrganizacion de planificacion de procesosEl planificador

El planificador

Andres Felipe Barco Santa Planificacion

Page 20: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Grabando el Contexto

Encolador

El cambio de contexto afecta significativamente elcomortamiento del sistema, dado que los computadoresmodernos tienen varios registros generales y de estado.

Andres Felipe Barco Santa Planificacion

Page 21: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Grabando el Contexto

Encolador

El cambio de contexto afecta significativamente elcomortamiento del sistema, dado que los computadoresmodernos tienen varios registros generales y de estado.

El cambio contexto usa ordinariamente las operacionesconvencionales de load y store para guardar la informacion delos registros.

(n + m) b x K time units

Andres Felipe Barco Santa Planificacion

Page 22: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Cambio de Contexto

Andres Felipe Barco Santa Planificacion

Page 23: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Hipotesis

Un procesador requiere 50 nanosegundos para almacenar unaunidad de informacion (b x K = 50ns). Suponga un bus de32-bits y registros de 32-bits de ancho.

Andres Felipe Barco Santa Planificacion

Page 24: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Hipotesis

Un procesador requiere 50 nanosegundos para almacenar unaunidad de informacion (b x K = 50ns). Suponga un bus de32-bits y registros de 32-bits de ancho.

Cada registro requiere 50 nanosegundos para almacenarsu contenido.

Andres Felipe Barco Santa Planificacion

Page 25: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Hipotesis

Un procesador requiere 50 nanosegundos para almacenar unaunidad de informacion (b x K = 50ns). Suponga un bus de32-bits y registros de 32-bits de ancho.

Cada registro requiere 50 nanosegundos para almacenarsu contenido.

Si existen n = 32 registros de proposito general y m = 8registros de estados, el tiempo total para grabar losregistros es 40x50 nanosegundos, es decir, 2microsegundos.

Andres Felipe Barco Santa Planificacion

Page 26: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Otros 2 microsegundos son usados para restaurar losregistros para que otro hilo ejecute

Andres Felipe Barco Santa Planificacion

Page 27: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Otros 2 microsegundos son usados para restaurar losregistros para que otro hilo ejecute (ignorando el tiempo deseleccion de hilo).

Andres Felipe Barco Santa Planificacion

Page 28: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Otros 2 microsegundos son usados para restaurar losregistros para que otro hilo ejecute (ignorando el tiempo deseleccion de hilo).El tiempo total es mas de 4 microsegundos dado el tiempode cambio de contexto del dispatcher y el tiempo tomadoen elegir el siguiente hilo.

Andres Felipe Barco Santa Planificacion

Page 29: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Complejidad del Cambio

Otros 2 microsegundos son usados para restaurar losregistros para que otro hilo ejecute (ignorando el tiempo deseleccion de hilo).El tiempo total es mas de 4 microsegundos dado el tiempode cambio de contexto del dispatcher y el tiempo tomadoen elegir el siguiente hilo.

Gasto

Un procesador de 1Ghz puede ejecutar una instruccion deregistro en 2 nanosegundos. Esto significa que durante los 4microsegundos requeridos para un cambio de contexto, elprocesador pudo haber ejecutado cerca de 2,000 instruccioneshaciendo trabajo util!!!

Andres Felipe Barco Santa Planificacion

Page 30: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Voluntariamente

Yield

Parte de los mecanismos del scheduler es la forma invocarlo.La mas sencilla es permitiendo a los procesos/hilos invocar alplanificador explıcitamente, compartiendo la CPUvoluntariamente.

Andres Felipe Barco Santa Planificacion

Page 31: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Voluntariamente

Yield

Parte de los mecanismos del scheduler es la forma invocarlo.La mas sencilla es permitiendo a los procesos/hilos invocar alplanificador explıcitamente, compartiendo la CPUvoluntariamente.

yield(r,s){memory[r] = PC;PC = memory[s];}

Andres Felipe Barco Santa Planificacion

Page 32: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Voluntariamente

Andres Felipe Barco Santa Planificacion

Page 33: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Involuntariamente

Interval Timer

El sistema de interrupciones fuerzan perdiodicamente a losprocesos a ejecutar la intruccion yield. El cuestion es incorporarun dispositivo de manejo de tiempo (interval timer device), elcual produzca una interrupcion cada vez que el tiempo expira.

Andres Felipe Barco Santa Planificacion

Page 34: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Involuntariamente

Interval Timer

El sistema de interrupciones fuerzan perdiodicamente a losprocesos a ejecutar la intruccion yield. El cuestion es incorporarun dispositivo de manejo de tiempo (interval timer device), elcual produzca una interrupcion cada vez que el tiempo expira.

EL interval timer lanza una interrupcion cada K x T ticks dereloj. Este valor es programable por medio del numero de ticksdeseados y asignado por una funcion llamada programmableinterval timer.

Andres Felipe Barco Santa Planificacion

Page 35: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Involuntariamente

IntervalTimer(){InterruptCount = InterruptCount - 1;if(InterruptCount <= 0){InterruptRequest = True;InterruptCount = K;}}

Andres Felipe Barco Santa Planificacion

Page 36: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Grabando el ContextoCambio de ContextoComplejidad del CambioCompartir la CPU VoluntariamenteCompartir la CPU Involuntariamente

Compartir la CPU Involuntariamente

IntervalTimer(){InterruptCount = InterruptCount - 1;if(InterruptCount <= 0){InterruptRequest = True;InterruptCount = K;}}SetInterval(<programmable value>){K = <programmable value>;InterruptCount = K;}

Andres Felipe Barco Santa Planificacion

Page 37: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Caracterısticas del Planificador

Los algoritmos de planificacion modernos usan prioridadesinternas (prioridades), este determina una jerarquıa con la cualel dispatcher selecciona el proceso a ejecutar.

Andres Felipe Barco Santa Planificacion

Page 38: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Caracterısticas del Planificador

Los algoritmos de planificacion modernos usan prioridadesinternas (prioridades), este determina una jerarquıa con la cualel dispatcher selecciona el proceso a ejecutar.

En prioridades externas cada usuario es asignado con unaprioridad estatica. Cuando un usuario crea un proceso laprioridad interna es obtenida con una funcion sobre laexterna.

Andres Felipe Barco Santa Planificacion

Page 39: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Caracterısticas del Planificador

Los algoritmos de planificacion modernos usan prioridadesinternas (prioridades), este determina una jerarquıa con la cualel dispatcher selecciona el proceso a ejecutar.

En prioridades externas cada usuario es asignado con unaprioridad estatica. Cuando un usuario crea un proceso laprioridad interna es obtenida con una funcion sobre laexterna.

La prioridad tambien se puede definir dinamicamente porcircunstancias como la cantidad de tiempo que llevaesperando ser ejecutado.

Andres Felipe Barco Santa Planificacion

Page 40: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Compartiendo la CPU

Si el planificador quiere compartir la CPU equitativamente a nprocesos, durante un intervalo de tiempo K ; cada proceso seejecutara en la CPU un intervalo de tiempo de K/n.

Andres Felipe Barco Santa Planificacion

Page 41: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Compartiendo la CPU

Si el planificador quiere compartir la CPU equitativamente a nprocesos, durante un intervalo de tiempo K ; cada proceso seejecutara en la CPU un intervalo de tiempo de K/n.

Time Quantum

Si el planificador utiliza un interval timer, cada proceso seejecutara por un quantum de tiempo; tambien llamadotimeslice.

Andres Felipe Barco Santa Planificacion

Page 42: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Modelo de Estudio

P = {Pi |0 <= i <= n} Conjunto de procesos modernos.

Andres Felipe Barco Santa Planificacion

Page 43: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Modelo de Estudio

P = {Pi |0 <= i <= n} Conjunto de procesos modernos.

{Pi,j} Lista de hilos que representan el proceso Pi .

Andres Felipe Barco Santa Planificacion

Page 44: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Modelo de Estudio

P = {Pi |0 <= i <= n} Conjunto de procesos modernos.

{Pi,j} Lista de hilos que representan el proceso Pi .

S(Pi,j) Estados posibles para cada hilo (running, ready,blocked)

Andres Felipe Barco Santa Planificacion

Page 45: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Modelo de Estudio

P = {Pi |0 <= i <= n} Conjunto de procesos modernos.

{Pi,j} Lista de hilos que representan el proceso Pi .

S(Pi,j) Estados posibles para cada hilo (running, ready,blocked)

Service time

T (pi,j): tiempo en el cual el hilo debe estar corriendo en la CPUantes para completar su trabajo.

Andres Felipe Barco Santa Planificacion

Page 46: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Wait time

W (pi,j): tiempo en el que el hilo espera en estado listo antes depasar por primera vez a la CPU.

Andres Felipe Barco Santa Planificacion

Page 47: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Wait time

W (pi,j): tiempo en el que el hilo espera en estado listo antes depasar por primera vez a la CPU.

Turnaround time

pi,j ,TTRnd(pi,j): tiempo que pasa entre el primer momento en elque el hilo entra a lista de espera y el momento en el que elhilo se ejecuta por ultima vez.

Andres Felipe Barco Santa Planificacion

Page 48: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Caracterısticas del PlanificadorCompartiendo la CPUModelo de EstudioMetricas

Metricas

La metrica mas importante para medir el comportamiento delsistema es el Wait time (llamado response time en sistemas detiempo compartido), dado que al usuario le interesa el tiempoque debe esperar para que la aplicacion responda.

Andres Felipe Barco Santa Planificacion

Page 49: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion no apropiativa

Nonpreemptive

Estas estrategias permiten a los hilos ejecutarse hasta suterminacion. Es decir, el hilo nunca vuelve a la lista de hiloslistos para correr.

Andres Felipe Barco Santa Planificacion

Page 50: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion no apropiativa

Nonpreemptive

Estas estrategias permiten a los hilos ejecutarse hasta suterminacion. Es decir, el hilo nunca vuelve a la lista de hiloslistos para correr.

First Come First Served

Shorest Job Next

Priority Scheduling

Deadline scheduling

Andres Felipe Barco Santa Planificacion

Page 51: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Primero en llegar primero en ser servido

FCFS

Esta estrategia asigna prioridad a los hilos con respecto alorden de llegada a la lista de espera.

Andres Felipe Barco Santa Planificacion

Page 52: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Primero en llegar primero en ser servido

FCFS

Esta estrategia asigna prioridad a los hilos con respecto alorden de llegada a la lista de espera.El enqueuer asigna laprioridad al entrar a lista y dispatcher ejecuta de acuerdo aestas.

Andres Felipe Barco Santa Planificacion

Page 53: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Primero en llegar primero en ser servido

FCFS

Esta estrategia asigna prioridad a los hilos con respecto alorden de llegada a la lista de espera.El enqueuer asigna laprioridad al entrar a lista y dispatcher ejecuta de acuerdo aestas.

Es facilmente implementable con una cola FIFO.

Andres Felipe Barco Santa Planificacion

Page 54: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Trabajo mas corto primero

SJN

Suponga que se conocen de antemano los tiempos de serviciode los hilos. El planificador escoge para ejecucion el hilo cuyotiempo de servicio sea menor.

Andres Felipe Barco Santa Planificacion

Page 55: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Trabajo mas corto primero

SJN

Suponga que se conocen de antemano los tiempos de serviciode los hilos. El planificador escoge para ejecucion el hilo cuyotiempo de servicio sea menor.

El promedio de tiempo de espera disminuye.

Andres Felipe Barco Santa Planificacion

Page 56: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Trabajo mas corto primero

SJN

Suponga que se conocen de antemano los tiempos de serviciode los hilos. El planificador escoge para ejecucion el hilo cuyotiempo de servicio sea menor.

El promedio de tiempo de espera disminuye.Puede condenar a hilos con servicios largos si en la lista deespera hay constantemente hilos con servicios cortos.

Andres Felipe Barco Santa Planificacion

Page 57: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion con prioridad

Priority Scheduling

En este tipo de clasificacion los hilos son asignados a la CPUde acuerdo a una prioridad externa. Esta se determina, porejemplo, con la prioridad del usuario, la naturaleza del hilo ocualquier otro criterio.

Andres Felipe Barco Santa Planificacion

Page 58: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion con prioridad

Priority Scheduling

En este tipo de clasificacion los hilos son asignados a la CPUde acuerdo a una prioridad externa. Esta se determina, porejemplo, con la prioridad del usuario, la naturaleza del hilo ocualquier otro criterio.

Prioridades estaticas La prioridad es la misma durante laexistencia del hilo.

Andres Felipe Barco Santa Planificacion

Page 59: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion con prioridad

Priority Scheduling

En este tipo de clasificacion los hilos son asignados a la CPUde acuerdo a una prioridad externa. Esta se determina, porejemplo, con la prioridad del usuario, la naturaleza del hilo ocualquier otro criterio.

Prioridades estaticas La prioridad es la misma durante laexistencia del hilo.

Prioridades dinamicas La prioridad puede variar durante laexistencia del hilo.

Andres Felipe Barco Santa Planificacion

Page 60: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion de Tiempo-Lımite

Deadline Scheduler

Los sistemas de tiempo real fuertes (hard real-time systems)se caracterizan por poseer hilos que deben completar suejecucion antes de un tiempo lımite.

Andres Felipe Barco Santa Planificacion

Page 61: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion de Tiempo-Lımite

Deadline Scheduler

Los sistemas de tiempo real fuertes (hard real-time systems)se caracterizan por poseer hilos que deben completar suejecucion antes de un tiempo lımite. La forma de medir elcomportamiento es si el sistema puede asegurar cumplir loslımites de esos hilos.

Andres Felipe Barco Santa Planificacion

Page 62: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion de Tiempo-Lımite

Deadline Scheduler

Los sistemas de tiempo real fuertes (hard real-time systems)se caracterizan por poseer hilos que deben completar suejecucion antes de un tiempo lımite. La forma de medir elcomportamiento es si el sistema puede asegurar cumplir loslımites de esos hilos.

Se debe conocer de antemano los tiempos de servicios delos hilos.

Andres Felipe Barco Santa Planificacion

Page 63: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion no apropiativaPrimero en llegar primero en ser servidoTrabajo mas corto primeroPlanificacion con prioridadPlanificacion de Tiempo-Lımite

Planificacion de Tiempo-Lımite

Deadline Scheduler

Los sistemas de tiempo real fuertes (hard real-time systems)se caracterizan por poseer hilos que deben completar suejecucion antes de un tiempo lımite. La forma de medir elcomportamiento es si el sistema puede asegurar cumplir loslımites de esos hilos.

Se debe conocer de antemano los tiempos de servicios delos hilos.

Un hilo puede ser admitido en la lista de espera si y solo siel scheduler garantiza su ejecucion junto con los demashilos en espera.

Andres Felipe Barco Santa Planificacion

Page 64: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Planificacion apropiativa

Preemptive

En estas estrategias los algoritmos asignan la CPU a los hiloscon mayor prioridad. Cada vez que sea necesario se obliga alhilo que corre a realizar la operacion yield cuando se necesite.

Andres Felipe Barco Santa Planificacion

Page 65: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Planificacion apropiativa

Preemptive

En estas estrategias los algoritmos asignan la CPU a los hiloscon mayor prioridad. Cada vez que sea necesario se obliga alhilo que corre a realizar la operacion yield cuando se necesite.

Round Robin

Multiple-Level Queues

Andres Felipe Barco Santa Planificacion

Page 66: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Round Robin

RREs la estrategia mas usada en los sistemas de computo. Su objetivoes distribuir el uso de la CPU equitativamente a todos losprocesos/hilos. Cada uno con un intervalo de 1/n por cada unidad detiempo.

Andres Felipe Barco Santa Planificacion

Page 67: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Round Robin

RREs la estrategia mas usada en los sistemas de computo. Su objetivoes distribuir el uso de la CPU equitativamente a todos losprocesos/hilos. Cada uno con un intervalo de 1/n por cada unidad detiempo.

Cuando un hilo termina sin completar su quantum, al nuevo hilose le asigna un nuevo quantum entero.

Andres Felipe Barco Santa Planificacion

Page 68: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Round Robin

RREs la estrategia mas usada en los sistemas de computo. Su objetivoes distribuir el uso de la CPU equitativamente a todos losprocesos/hilos. Cada uno con un intervalo de 1/n por cada unidad detiempo.

Cuando un hilo termina sin completar su quantum, al nuevo hilose le asigna un nuevo quantum entero.Cuando llega un hilo se pone en la lista de espera pero suposicion exacta depende de las opciones.

Andres Felipe Barco Santa Planificacion

Page 69: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Round Robin

RREs la estrategia mas usada en los sistemas de computo. Su objetivoes distribuir el uso de la CPU equitativamente a todos losprocesos/hilos. Cada uno con un intervalo de 1/n por cada unidad detiempo.

Cuando un hilo termina sin completar su quantum, al nuevo hilose le asigna un nuevo quantum entero.Cuando llega un hilo se pone en la lista de espera pero suposicion exacta depende de las opciones.Si se posee una lista doblemente enlazada el nuevo procesosecoloca justo antes del ultimo proceso ejecutado.

Andres Felipe Barco Santa Planificacion

Page 70: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Round Robin

RREs la estrategia mas usada en los sistemas de computo. Su objetivoes distribuir el uso de la CPU equitativamente a todos losprocesos/hilos. Cada uno con un intervalo de 1/n por cada unidad detiempo.

Cuando un hilo termina sin completar su quantum, al nuevo hilose le asigna un nuevo quantum entero.Cuando llega un hilo se pone en la lista de espera pero suposicion exacta depende de las opciones.Si se posee una lista doblemente enlazada el nuevo procesosecoloca justo antes del ultimo proceso ejecutado.Se reinicia el reloj cada vez que asigna un nuevo hilo.

Andres Felipe Barco Santa Planificacion

Page 71: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Colas de multiples niveles

Multiple-Level Queues

Esta es una extension de la planificacion por prioridad. Existendiferentes “piscinas” de procesos con la misma prioridad. Elplanificador asigna procesos de acuerdo a una estrategia yhilos en los procesos de acuerdo a otra estrategia.

Andres Felipe Barco Santa Planificacion

Page 72: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Colas de multiples niveles

Multiple-Level Queues

Esta es una extension de la planificacion por prioridad. Existendiferentes “piscinas” de procesos con la misma prioridad. Elplanificador asigna procesos de acuerdo a una estrategia yhilos en los procesos de acuerdo a otra estrategia.

Suponga una lista dividida en sublistas. Se ejecuta en ordenascendente para que los procesos mas prioritarios se ejecutenantes que los demas.

Andres Felipe Barco Santa Planificacion

Page 73: Planificaci - Sistemas Operativoscic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:clase6-sisoper.… · Sistemas Operativos Andres Felipe Barco Santa´ Pontificia Universidad

IntroduccionScheduling

MechanismsSeleccion de Estrategia

Estrategias No-apropiativasEstrategias Apropiativas

Planificacion apropiativaRound RobinColas de multiples niveles

Fin de la Clase

Nos vemos en la proxima!!!

Andres Felipe Barco Santa Planificacion