SlideShare una empresa de Scribd logo
1 de 28
Descargar para leer sin conexión
Escuela Universitaria de
Informática (Segovia) 1
Unidad 2:
Gestión de Procesos
Tema 5: Planificación de procesos.
5.1 Criterios y tipos de planificación.
5.2 Algoritmos de planificación.
5.3 Métodos multicolas y multiprocesadores.
5.4 Evaluación de políticas de planificación.
Escuela Universitaria de
Informática (Segovia) 2
5.1 Criterios y tipos de planificación.
„ Introducción:
„ Objetivo de la multiprogramación:
• Tener un proceso en ejecución en todo momento para un
mayor aprovechamiento de la CPU.
„ En un sistema monoprocesador nunca habrá más de un
proceso en ejecución. Si hay más procesos, tendrán que
esperar a que la CPU quede libre para reasignarse.
„ Para un mayor aprovechamiento, se mantienen varios
procesos en memoria a la vez. Cuando un proceso
necesita esperar, el SO le quita la CPU y se la da a otro
proceso.
„ Casi todos los recursos del computador se planifican
antes de usarse; la planificación es fundamental en el
diseño de un SO.
Escuela Universitaria de
Informática (Segovia) 3
5.1 Criterios y tipos de planificación.
„ Ciclo de ráfagas de CPU y E/S:
„ La ejecución de un proceso consiste en un ciclo de
ejecución alternando de manera sucesiva:
• Ráfagas de CPU (que inician el proceso), durante las cuales el
proceso ejecuta instrucciones.
• Ráfagas de E/S, durante las cuales el proceso utiliza o espera
por la E/S.
„ Se ha medido la duración de las ráfagas de CPU y resulta
que varían considerablemente de un proceso a otro y
de un procesador a otro, sin embargo tienden a tener una
curva de frecuencia bien tipificada.
Escuela Universitaria de
Informática (Segovia) 4
5.1 Criterios y tipos de planificación.
„ Ciclo de ráfagas de CPU y E/S:
„ Histograma de tiempos de ráfaga de CPU:
• Se observa:
• Gran nº de ráfagas de CPU cortas y pocas ráfagas de CPU largas.
• Ráfagas de CPU cortas: programas limitados por E/S.
• Ráfagas de CPU largas: programas limitados por CPU.
Escuela Universitaria de
Informática (Segovia) 5
5.1 Criterios y tipos de planificación.
„ Planificación expropiativa:
„ Las decisiones de planificación de CPU se toman según
las cuatro situaciones siguientes:
• 1. Cuando un proceso pasa del estado en ejecución a en espera.
• 2. Cuando un proceso pasa del estado en ejecución a listo.
• 3. Cuando un proceso pasa del estado en espera al estado listo.
• 4. Cuando un proceso termina.
„ Los casos 1 y 4 corresponden a una planificación no
expropiativa (a la fuerza hay que escoger un nuevo
proceso).
„ Los casos 2 y 3 corresponden a una planificación
expropiativa.
Escuela Universitaria de
Informática (Segovia) 6
5.1 Criterios y tipos de planificación.
„ Criterios de planificación:
„ Utilización de CPU: % de tiempo que la CPU está ocupada.
„ Rendimiento: nº de procesos, trabajos, que se completan
por unidad de tiempo.
„ Tiempo de retorno: tiempo transcurrido entre la llegada de
un proceso y su finalización.
„ Tiempo de espera: tiempo que un proceso permanece en la
cola de preparados.
„ Tiempo de respuesta: tiempo que un proceso bloqueado
tarda en entrar en la CPU desde que ocurre el suceso que lo
bloquea.
Escuela Universitaria de
Informática (Segovia) 7
5.1 Criterios y tipos de planificación.
„ Criterios de planificación:
„ Posibles objetivos de la planificación:
• Minimizar el tiempo medio de espera o de retorno.
• Maximizar la utilización de CPU.
• Mantener el tiempo de respuesta por debajo de un valor máximo.
„ En sistemas interactivos, como los sistemas de tiempo
compartido, se consideran también la estadística (las
medias) de esas magnitudes.
„ No existe ninguna política de planificación óptima. La
bondad de un método depende de:
• Tipo de procesos.
• Criterio.
Escuela Universitaria de
Informática (Segovia) 8
5.2 Algoritmos de planificación.
„ FCFS (First Come, First Served).
„ SJF (Shortest Job First) o SPN (Shortest Process Next).
„ SRTF (Shortest Remaining Time First).
„ Planificación por prioridad.
„ Planificación por turno circular, RR (Round Robin).
„ Realimentación.
„ HRRN (Highest Response Ratio Next).
Escuela Universitaria de
Informática (Segovia) 9
5.2 Algoritmos de planificación.
„ FCFS (First Come, First Served), ejemplo:
„ Planificación de servicio por orden de llegada.
„ Calcular el tiempo de espera, tiempo de retorno y
tiempo medio de espera si aplicamos el algoritmo FCFS
suponiendo que los procesos siguientes llegan en el mismo
instante y en el orden: P1, P2, P3.
„ ¿Y si el orden de llegada es: P2, P3, P1?.
Escuela Universitaria de
Informática (Segovia) 10
5.2 Algoritmos de planificación.
„ FCFS, ejemplo:
Escuela Universitaria de
Informática (Segovia) 11
5.2 Algoritmos de planificación.
„ FCFS:
„ Planificación de servicio por orden de llegada.
„ Es el algoritmo más sencillo, el primer proceso que solicita
la CPU es el primero en recibirla.
„ Fácil de implementar con una política FIFO para la cola de
preparados.
„ Tiempo de espera promedio bastante largo.
Escuela Universitaria de
Informática (Segovia) 12
5.2 Algoritmos de planificación.
„ SJF (Shortest Job First), ejemplo:
„ Primero el trabajo más corto.
„ Calcular el tiempo medio de espera que resulta de aplicar:
• Un algoritmo SJF no expulsivo.
• Un algoritmo SJF expulsivo (SRTF, Shortest Remaining Time
First).
Escuela Universitaria de
Informática (Segovia) 13
5.2 Algoritmos de planificación.
„ SJF, ejemplo:
Escuela Universitaria de
Informática (Segovia) 14
5.2 Algoritmos de planificación.
„ SJF:
„ Entra en la CPU el proceso con la ráfaga de CPU más
corta.
„ Minimiza el tiempo de espera medio.
„ Riesgo de inanición de los procesos de larga duración.
„ No es implementable. Se pueden estimar las duraciones de
los procesos, según su historia reciente.
„ Versión expulsiva (SRTF): el proceso en CPU es desalojado
si llega a la cola un proceso con duración más corta.
Escuela Universitaria de
Informática (Segovia) 15
5.2 Algoritmos de planificación.
„ Planificación por prioridad:
„ Cada proceso tiene una prioridad, entrará primero en la
CPU el que tenga mayor prioridad.
• Política de prioridades expulsiva o no.
• La prioridad se puede definir:
• De forma interna, la define el SO.
• De forma externa, la definen los usuarios.
• SJF es un caso de planificación por prioridad.
„ Los procesos de prioridad más baja tienen riesgo de
inanición.
„ Solución: envejecimiento. Ir aumentando de forma
progresiva la prioridad de los procesos en espera.
Escuela Universitaria de
Informática (Segovia) 16
5.2 Algoritmos de planificación.
„ Planificación por turno circular:
„ RR (Round Robin):
• Adecuado para implementar tiempo compartido.
• Comportamiento como FCFS, con la diferencia de que cada
proceso dispone de un cuanto de tiempo máximo.
• Si cuando expira el cuanto de tiempo el proceso continúa en CPU, el
planificador lo desaloja y lo ingresa al final de la cola de preparados.
• La cola de preparados se gestiona como FIFO.
• Según sea el cuanto de tiempo, Q:
• Si Q es muy grande, los procesos terminan sus ráfagas de CPU
antes de que termine el cuanto: se comporta como un FCFS.
• Si Q=>0, se tiende a un sistema en el que cada proceso dispone de
un procesador a 1/N de la velocidad del procesador real (procesador
compartido).
• Si Q es muy pequeño se suceden constantemente los cambios
de contexto y del rendimiento disminuye mucho.
Escuela Universitaria de
Informática (Segovia) 17
5.2 Métodos Multicola y Multiprocesador.
„ Planificación con colas de múltiples niveles:
„ Distinguimos entre procesos que pueden tener distintas
necesidades en cuanto al tiempo de respuesta y por
tanto distintas necesidades de planificación.
• Procesos que se ejecutan en primer plano o interactivos.
• Procesos que se ejecutan en segundo plano o por lotes.
Escuela Universitaria de
Informática (Segovia) 18
5.2 Métodos Multicola y Multiprocesador.
„ Planificación con colas de múltiples niveles:
„ Un algoritmo de planificación con colas de múltiples niveles
divide la cola de procesos listos en varias colas.
„ Cada cola tiene su propio algoritmo de planificación.
„ Existirá, por tanto, una planificación entre colas.
„ Las colas se pueden planificar según:
• Planificación expropiativa de prioridades fijas.
• Dividiendo el tiempo de CPU entre las colas.
Escuela Universitaria de
Informática (Segovia) 19
5.2 Métodos Multicola y Multiprocesador.
„ Planificación con colas de múltiples niveles y
realimentación:
„ Se permite que un proceso pase de una cola a otra.
„ Si un proceso gasta demasiado tiempo de CPU, se le pasa
a una cola de menor prioridad.
„ Si un proceso espera mucho tiempo en una cola de baja
prioridad se le puede pasar a una de mayor prioridad,
evitando la inanición. (Caso del sistema UNIX)
Escuela Universitaria de
Informática (Segovia) 20
5.2 Métodos Multicola y Multiprocesador.
„ Planificación con colas de múltiples niveles y
realimentación:
„ Un planificador de colas multinivel con realimentación
está definido por los siguientes parámetros:
• El número de colas.
• El algoritmo de planificación para cada cola.
• Los métodos para determinar cuando mover un proceso a
una cola de distinta prioridad a la que ocupa.
• El método para determinar en qué cola ingresará un
proceso.
Escuela Universitaria de
Informática (Segovia) 21
5.2 Métodos Multicola y Multiprocesador.
„ Planificación en multiprocesadores:
„ Varias CPU => planificación más compleja.
„ Supondremos procesadores de igual funcionamiento:
• Cualquier procesador disponible podrá ejecutar cualquier
proceso de la cola.
„ Uso de cola común para todos los procesos:
• No habrá procesadores ociosos con su cola vacía.
• No habrá procesadores con muy alta ocupación.
„ Dos posibles estrategias:
• Cada procesador se autoplanifica, asegurándonos de que:
• Dos procesadores no escojan el mismo proceso.
• No se quede ningún proceso sin escoger.
• Un procesador actúa como planificador de los demás
procesadores.
Escuela Universitaria de
Informática (Segovia) 22
5.2 Evaluación de políticas de planificación.
„ ¿Cómo escoger el algoritmo de planificación a utilizar?
„ Criterios de evaluación de un algoritmo:
• Grado de utilización de la CPU.
• Tiempo de respuesta.
• Rendimiento.
„ Evaluación de políticas:
• Modelado determinista.
• Modelos de colas (estadísticos).
• Simulaciones.
• Implementación.
Escuela Universitaria de
Informática (Segovia) 23
5.2 Evaluación de políticas de planificación.
„ Modelado determinista:
„ Evaluación analítica de algoritmos: se calcula el
desempeño de un algoritmo teniendo en cuenta la
carga de trabajo del sistema:
• 1. Se definen los criterios de rendimiento.
• 2. Se buscan los algoritmos candidatos.
• 3. Se establece una carga de trabajo representativa del sistema.
• 4. Para cada algoritmo:
• Sometemos la carga de trabajo a su planificación.
• Evaluamos su rendimiento en función de los criterios de 1.
• 5. Seleccionamos el que mejor se comporte.
Escuela Universitaria de
Informática (Segovia) 24
5.2 Evaluación de políticas de planificación.
„ Modelado determinista:
„ Características:
• Cómodo de realizar.
• Proporciona magnitudes exactas con las que comparar los
algoritmos.
• Limitación de su validez en cuanto a que se le somete a una
carga concreta de trabajo.
Escuela Universitaria de
Informática (Segovia) 25
5.2 Evaluación de políticas de planificación.
„ Modelos de colas:
„ Metodología:
• Determinación de la distribución (estadística) de ráfagas de
CPU y de E/S.
• Distribución de los tiempos de llegada al sistema.
„ Resultado: probabilidad de una ráfaga de CPU dada.
• Distribución exponencial que se describe en términos de su
media.
• Cálculos de:
• Rendimiento promedio.
• Tiempo de espera ...
„ Sistema informático como:
• Red de servidores, cada servidor con su cola de procesos en
espera
Escuela Universitaria de
Informática (Segovia) 26
5.2 Evaluación de políticas de planificación.
„ Simulaciones:
„ Programación de un modelo del sistema de computación.
„ Generación de datos: generador de números aleatorios
modificado para generar:
• Procesos.
• Tiempo de ráfagas de CPU.
• Llegadas, partidas, ...
„ Problemas:
• Simulaciones costosas, requieren mucho tiempo y recursos.
• Cintas de rastreo, registran secuencias de sucesos reales,
requieren mucho espacio de almacenamiento.
• Tarea compleja de diseño, codificación y depuración del
simulador.
Escuela Universitaria de
Informática (Segovia) 27
5.2 Evaluación de políticas de planificación.
„ Implementación:
„ Método más fiable, forma exacta de evaluar un algoritmo
de planificación.
„ Metodología:
• Codificarlo.
• Colocarlo en el SO.
• Probar su funcionamiento.
„ Problema:
• Coste elevado:
• Modificación del SO.
• Dificultar el trabajo de los usuarios, puesto que el SO está en
continuo cambio.
Escuela Universitaria de
Informática (Segovia) 28
5.2 Evaluación de políticas de planificación.
„ Solución:
„ Plantear un esquema híbrido del tipo:
• 1. Análisis preliminar de las políticas candidatas mediante
modelos deterministas.
• 2. Simulación de la opción u opciones más ventajosas.
• 3. Implementación de la opción óptima:
• Primero en un sistema de desarrollo (pruebas).
• Finalmente en un sistema de producción.
„ Problema:
• Entorno dinámico y variable (nuevos programas, nuevos
problemas).
• Característica deseada: Planificación flexible, separación clara
entre mecanismos y políticas.

Más contenido relacionado

La actualidad más candente

Modelo osi y TCP/IP
Modelo osi y TCP/IPModelo osi y TCP/IP
Modelo osi y TCP/IPEmiliusMB
 
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?Software Guru
 
SO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivosSO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivosFranklin Parrales Bravo
 
Curso de Sistemas Operativos - Unidad Procesos e Hilos
Curso de Sistemas Operativos - Unidad Procesos e HilosCurso de Sistemas Operativos - Unidad Procesos e Hilos
Curso de Sistemas Operativos - Unidad Procesos e HilosJuan Rafael Alvarez Correa
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosFernando Morales
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosFranklin Parrales Bravo
 
Gestion de dispositivos de entrada y salida
Gestion de dispositivos de entrada y salidaGestion de dispositivos de entrada y salida
Gestion de dispositivos de entrada y salidaVictorVillalobos
 
Modelamiento del Data Warehouse (caso práctico)
Modelamiento del Data Warehouse (caso práctico)Modelamiento del Data Warehouse (caso práctico)
Modelamiento del Data Warehouse (caso práctico)LPI ONG
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREjose_rob
 

La actualidad más candente (20)

Modelo osi y TCP/IP
Modelo osi y TCP/IPModelo osi y TCP/IP
Modelo osi y TCP/IP
 
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
 
SO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivosSO Unidad 3: Administración de memoria y sistemas de archivos
SO Unidad 3: Administración de memoria y sistemas de archivos
 
Gestion de memoria en Linux
Gestion de memoria en LinuxGestion de memoria en Linux
Gestion de memoria en Linux
 
Pilas y colas
Pilas y colasPilas y colas
Pilas y colas
 
Hilos con Posix
Hilos con PosixHilos con Posix
Hilos con Posix
 
Memorias semiconductoras
Memorias semiconductorasMemorias semiconductoras
Memorias semiconductoras
 
Curso de Sistemas Operativos - Unidad Procesos e Hilos
Curso de Sistemas Operativos - Unidad Procesos e HilosCurso de Sistemas Operativos - Unidad Procesos e Hilos
Curso de Sistemas Operativos - Unidad Procesos e Hilos
 
Algoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativosAlgoritmos de planificación de procesos en sistemas operativos
Algoritmos de planificación de procesos en sistemas operativos
 
Administración de Memoria
Administración de MemoriaAdministración de Memoria
Administración de Memoria
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
 
Comandos fedora
Comandos fedoraComandos fedora
Comandos fedora
 
Gestion de dispositivos de entrada y salida
Gestion de dispositivos de entrada y salidaGestion de dispositivos de entrada y salida
Gestion de dispositivos de entrada y salida
 
Modelamiento del Data Warehouse (caso práctico)
Modelamiento del Data Warehouse (caso práctico)Modelamiento del Data Warehouse (caso práctico)
Modelamiento del Data Warehouse (caso práctico)
 
Manual replicación instantanea
Manual replicación instantaneaManual replicación instantanea
Manual replicación instantanea
 
Clase: Uso correcto de subprocesos bpmn
Clase: Uso correcto de subprocesos bpmnClase: Uso correcto de subprocesos bpmn
Clase: Uso correcto de subprocesos bpmn
 
Dfd
DfdDfd
Dfd
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
 
Protocolo de capa 6
Protocolo de capa 6Protocolo de capa 6
Protocolo de capa 6
 
Acuerdo de nivel operacional
Acuerdo de nivel operacionalAcuerdo de nivel operacional
Acuerdo de nivel operacional
 

Similar a Planificacion de sistemas operativos.pdf

Planificación de la CPU
Planificación de la CPUPlanificación de la CPU
Planificación de la CPUFernanda Soto
 
Planificación de la CPU
Planificación de la CPUPlanificación de la CPU
Planificación de la CPUFernanda Soto
 
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajoPoliticas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajojoel vasquez
 
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajoPoliticas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajojoel vasquez
 
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptxPLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptxLuisAlejandroPv
 
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptxPLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptxLuisAlejandroPv
 
Unidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IUnidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IKamps Tepes
 
Unidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IUnidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IKamps Tepes
 

Similar a Planificacion de sistemas operativos.pdf (20)

Planificación de la CPU
Planificación de la CPUPlanificación de la CPU
Planificación de la CPU
 
Planificación de la CPU
Planificación de la CPUPlanificación de la CPU
Planificación de la CPU
 
2003 Clase0610
2003 Clase06102003 Clase0610
2003 Clase0610
 
2003 Clase0610
2003 Clase06102003 Clase0610
2003 Clase0610
 
Planificacion cpu
Planificacion cpuPlanificacion cpu
Planificacion cpu
 
Planificacion cpu
Planificacion cpuPlanificacion cpu
Planificacion cpu
 
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajoPoliticas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
 
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajoPoliticas de planificacion sistemas operativos -grupo 2 -primer trabajo
Politicas de planificacion sistemas operativos -grupo 2 -primer trabajo
 
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptxPLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
 
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptxPLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
PLANIFICACIÓN DE SISTEMAS - WINDOWS - SISTEMAS OPERATIVOS - III (2).pptx
 
Actividad colaborativa 301402 7
Actividad colaborativa  301402 7Actividad colaborativa  301402 7
Actividad colaborativa 301402 7
 
Actividad colaborativa 301402 7
Actividad colaborativa  301402 7Actividad colaborativa  301402 7
Actividad colaborativa 301402 7
 
Políticas de Planificación
Políticas de PlanificaciónPolíticas de Planificación
Políticas de Planificación
 
Políticas de Planificación
Políticas de PlanificaciónPolíticas de Planificación
Políticas de Planificación
 
6 so-teo-planificacion
6 so-teo-planificacion6 so-teo-planificacion
6 so-teo-planificacion
 
6 so-teo-planificacion
6 so-teo-planificacion6 so-teo-planificacion
6 so-teo-planificacion
 
Unidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IUnidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos I
 
Unidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos IUnidad 3 : Sistemas Operativos I
Unidad 3 : Sistemas Operativos I
 
Planificación Sistemas Operativos 2021 2
Planificación Sistemas Operativos 2021 2Planificación Sistemas Operativos 2021 2
Planificación Sistemas Operativos 2021 2
 
Planificación Sistemas Operativos 2021 2
Planificación Sistemas Operativos 2021 2Planificación Sistemas Operativos 2021 2
Planificación Sistemas Operativos 2021 2
 

Último

Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionarmando_cardenas
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Opentix
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOSelenaCoronadoHuaman
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...ITeC Instituto Tecnología Construcción
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTEREMMAFLORESCARMONA
 
Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfmasogeis
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3AlexysCaytanoMelndez1
 

Último (7)

Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacion
 
Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTER
 
Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdf
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
 

Planificacion de sistemas operativos.pdf

  • 1. Escuela Universitaria de Informática (Segovia) 1 Unidad 2: Gestión de Procesos Tema 5: Planificación de procesos. 5.1 Criterios y tipos de planificación. 5.2 Algoritmos de planificación. 5.3 Métodos multicolas y multiprocesadores. 5.4 Evaluación de políticas de planificación.
  • 2. Escuela Universitaria de Informática (Segovia) 2 5.1 Criterios y tipos de planificación. „ Introducción: „ Objetivo de la multiprogramación: • Tener un proceso en ejecución en todo momento para un mayor aprovechamiento de la CPU. „ En un sistema monoprocesador nunca habrá más de un proceso en ejecución. Si hay más procesos, tendrán que esperar a que la CPU quede libre para reasignarse. „ Para un mayor aprovechamiento, se mantienen varios procesos en memoria a la vez. Cuando un proceso necesita esperar, el SO le quita la CPU y se la da a otro proceso. „ Casi todos los recursos del computador se planifican antes de usarse; la planificación es fundamental en el diseño de un SO.
  • 3. Escuela Universitaria de Informática (Segovia) 3 5.1 Criterios y tipos de planificación. „ Ciclo de ráfagas de CPU y E/S: „ La ejecución de un proceso consiste en un ciclo de ejecución alternando de manera sucesiva: • Ráfagas de CPU (que inician el proceso), durante las cuales el proceso ejecuta instrucciones. • Ráfagas de E/S, durante las cuales el proceso utiliza o espera por la E/S. „ Se ha medido la duración de las ráfagas de CPU y resulta que varían considerablemente de un proceso a otro y de un procesador a otro, sin embargo tienden a tener una curva de frecuencia bien tipificada.
  • 4. Escuela Universitaria de Informática (Segovia) 4 5.1 Criterios y tipos de planificación. „ Ciclo de ráfagas de CPU y E/S: „ Histograma de tiempos de ráfaga de CPU: • Se observa: • Gran nº de ráfagas de CPU cortas y pocas ráfagas de CPU largas. • Ráfagas de CPU cortas: programas limitados por E/S. • Ráfagas de CPU largas: programas limitados por CPU.
  • 5. Escuela Universitaria de Informática (Segovia) 5 5.1 Criterios y tipos de planificación. „ Planificación expropiativa: „ Las decisiones de planificación de CPU se toman según las cuatro situaciones siguientes: • 1. Cuando un proceso pasa del estado en ejecución a en espera. • 2. Cuando un proceso pasa del estado en ejecución a listo. • 3. Cuando un proceso pasa del estado en espera al estado listo. • 4. Cuando un proceso termina. „ Los casos 1 y 4 corresponden a una planificación no expropiativa (a la fuerza hay que escoger un nuevo proceso). „ Los casos 2 y 3 corresponden a una planificación expropiativa.
  • 6. Escuela Universitaria de Informática (Segovia) 6 5.1 Criterios y tipos de planificación. „ Criterios de planificación: „ Utilización de CPU: % de tiempo que la CPU está ocupada. „ Rendimiento: nº de procesos, trabajos, que se completan por unidad de tiempo. „ Tiempo de retorno: tiempo transcurrido entre la llegada de un proceso y su finalización. „ Tiempo de espera: tiempo que un proceso permanece en la cola de preparados. „ Tiempo de respuesta: tiempo que un proceso bloqueado tarda en entrar en la CPU desde que ocurre el suceso que lo bloquea.
  • 7. Escuela Universitaria de Informática (Segovia) 7 5.1 Criterios y tipos de planificación. „ Criterios de planificación: „ Posibles objetivos de la planificación: • Minimizar el tiempo medio de espera o de retorno. • Maximizar la utilización de CPU. • Mantener el tiempo de respuesta por debajo de un valor máximo. „ En sistemas interactivos, como los sistemas de tiempo compartido, se consideran también la estadística (las medias) de esas magnitudes. „ No existe ninguna política de planificación óptima. La bondad de un método depende de: • Tipo de procesos. • Criterio.
  • 8. Escuela Universitaria de Informática (Segovia) 8 5.2 Algoritmos de planificación. „ FCFS (First Come, First Served). „ SJF (Shortest Job First) o SPN (Shortest Process Next). „ SRTF (Shortest Remaining Time First). „ Planificación por prioridad. „ Planificación por turno circular, RR (Round Robin). „ Realimentación. „ HRRN (Highest Response Ratio Next).
  • 9. Escuela Universitaria de Informática (Segovia) 9 5.2 Algoritmos de planificación. „ FCFS (First Come, First Served), ejemplo: „ Planificación de servicio por orden de llegada. „ Calcular el tiempo de espera, tiempo de retorno y tiempo medio de espera si aplicamos el algoritmo FCFS suponiendo que los procesos siguientes llegan en el mismo instante y en el orden: P1, P2, P3. „ ¿Y si el orden de llegada es: P2, P3, P1?.
  • 10. Escuela Universitaria de Informática (Segovia) 10 5.2 Algoritmos de planificación. „ FCFS, ejemplo:
  • 11. Escuela Universitaria de Informática (Segovia) 11 5.2 Algoritmos de planificación. „ FCFS: „ Planificación de servicio por orden de llegada. „ Es el algoritmo más sencillo, el primer proceso que solicita la CPU es el primero en recibirla. „ Fácil de implementar con una política FIFO para la cola de preparados. „ Tiempo de espera promedio bastante largo.
  • 12. Escuela Universitaria de Informática (Segovia) 12 5.2 Algoritmos de planificación. „ SJF (Shortest Job First), ejemplo: „ Primero el trabajo más corto. „ Calcular el tiempo medio de espera que resulta de aplicar: • Un algoritmo SJF no expulsivo. • Un algoritmo SJF expulsivo (SRTF, Shortest Remaining Time First).
  • 13. Escuela Universitaria de Informática (Segovia) 13 5.2 Algoritmos de planificación. „ SJF, ejemplo:
  • 14. Escuela Universitaria de Informática (Segovia) 14 5.2 Algoritmos de planificación. „ SJF: „ Entra en la CPU el proceso con la ráfaga de CPU más corta. „ Minimiza el tiempo de espera medio. „ Riesgo de inanición de los procesos de larga duración. „ No es implementable. Se pueden estimar las duraciones de los procesos, según su historia reciente. „ Versión expulsiva (SRTF): el proceso en CPU es desalojado si llega a la cola un proceso con duración más corta.
  • 15. Escuela Universitaria de Informática (Segovia) 15 5.2 Algoritmos de planificación. „ Planificación por prioridad: „ Cada proceso tiene una prioridad, entrará primero en la CPU el que tenga mayor prioridad. • Política de prioridades expulsiva o no. • La prioridad se puede definir: • De forma interna, la define el SO. • De forma externa, la definen los usuarios. • SJF es un caso de planificación por prioridad. „ Los procesos de prioridad más baja tienen riesgo de inanición. „ Solución: envejecimiento. Ir aumentando de forma progresiva la prioridad de los procesos en espera.
  • 16. Escuela Universitaria de Informática (Segovia) 16 5.2 Algoritmos de planificación. „ Planificación por turno circular: „ RR (Round Robin): • Adecuado para implementar tiempo compartido. • Comportamiento como FCFS, con la diferencia de que cada proceso dispone de un cuanto de tiempo máximo. • Si cuando expira el cuanto de tiempo el proceso continúa en CPU, el planificador lo desaloja y lo ingresa al final de la cola de preparados. • La cola de preparados se gestiona como FIFO. • Según sea el cuanto de tiempo, Q: • Si Q es muy grande, los procesos terminan sus ráfagas de CPU antes de que termine el cuanto: se comporta como un FCFS. • Si Q=>0, se tiende a un sistema en el que cada proceso dispone de un procesador a 1/N de la velocidad del procesador real (procesador compartido). • Si Q es muy pequeño se suceden constantemente los cambios de contexto y del rendimiento disminuye mucho.
  • 17. Escuela Universitaria de Informática (Segovia) 17 5.2 Métodos Multicola y Multiprocesador. „ Planificación con colas de múltiples niveles: „ Distinguimos entre procesos que pueden tener distintas necesidades en cuanto al tiempo de respuesta y por tanto distintas necesidades de planificación. • Procesos que se ejecutan en primer plano o interactivos. • Procesos que se ejecutan en segundo plano o por lotes.
  • 18. Escuela Universitaria de Informática (Segovia) 18 5.2 Métodos Multicola y Multiprocesador. „ Planificación con colas de múltiples niveles: „ Un algoritmo de planificación con colas de múltiples niveles divide la cola de procesos listos en varias colas. „ Cada cola tiene su propio algoritmo de planificación. „ Existirá, por tanto, una planificación entre colas. „ Las colas se pueden planificar según: • Planificación expropiativa de prioridades fijas. • Dividiendo el tiempo de CPU entre las colas.
  • 19. Escuela Universitaria de Informática (Segovia) 19 5.2 Métodos Multicola y Multiprocesador. „ Planificación con colas de múltiples niveles y realimentación: „ Se permite que un proceso pase de una cola a otra. „ Si un proceso gasta demasiado tiempo de CPU, se le pasa a una cola de menor prioridad. „ Si un proceso espera mucho tiempo en una cola de baja prioridad se le puede pasar a una de mayor prioridad, evitando la inanición. (Caso del sistema UNIX)
  • 20. Escuela Universitaria de Informática (Segovia) 20 5.2 Métodos Multicola y Multiprocesador. „ Planificación con colas de múltiples niveles y realimentación: „ Un planificador de colas multinivel con realimentación está definido por los siguientes parámetros: • El número de colas. • El algoritmo de planificación para cada cola. • Los métodos para determinar cuando mover un proceso a una cola de distinta prioridad a la que ocupa. • El método para determinar en qué cola ingresará un proceso.
  • 21. Escuela Universitaria de Informática (Segovia) 21 5.2 Métodos Multicola y Multiprocesador. „ Planificación en multiprocesadores: „ Varias CPU => planificación más compleja. „ Supondremos procesadores de igual funcionamiento: • Cualquier procesador disponible podrá ejecutar cualquier proceso de la cola. „ Uso de cola común para todos los procesos: • No habrá procesadores ociosos con su cola vacía. • No habrá procesadores con muy alta ocupación. „ Dos posibles estrategias: • Cada procesador se autoplanifica, asegurándonos de que: • Dos procesadores no escojan el mismo proceso. • No se quede ningún proceso sin escoger. • Un procesador actúa como planificador de los demás procesadores.
  • 22. Escuela Universitaria de Informática (Segovia) 22 5.2 Evaluación de políticas de planificación. „ ¿Cómo escoger el algoritmo de planificación a utilizar? „ Criterios de evaluación de un algoritmo: • Grado de utilización de la CPU. • Tiempo de respuesta. • Rendimiento. „ Evaluación de políticas: • Modelado determinista. • Modelos de colas (estadísticos). • Simulaciones. • Implementación.
  • 23. Escuela Universitaria de Informática (Segovia) 23 5.2 Evaluación de políticas de planificación. „ Modelado determinista: „ Evaluación analítica de algoritmos: se calcula el desempeño de un algoritmo teniendo en cuenta la carga de trabajo del sistema: • 1. Se definen los criterios de rendimiento. • 2. Se buscan los algoritmos candidatos. • 3. Se establece una carga de trabajo representativa del sistema. • 4. Para cada algoritmo: • Sometemos la carga de trabajo a su planificación. • Evaluamos su rendimiento en función de los criterios de 1. • 5. Seleccionamos el que mejor se comporte.
  • 24. Escuela Universitaria de Informática (Segovia) 24 5.2 Evaluación de políticas de planificación. „ Modelado determinista: „ Características: • Cómodo de realizar. • Proporciona magnitudes exactas con las que comparar los algoritmos. • Limitación de su validez en cuanto a que se le somete a una carga concreta de trabajo.
  • 25. Escuela Universitaria de Informática (Segovia) 25 5.2 Evaluación de políticas de planificación. „ Modelos de colas: „ Metodología: • Determinación de la distribución (estadística) de ráfagas de CPU y de E/S. • Distribución de los tiempos de llegada al sistema. „ Resultado: probabilidad de una ráfaga de CPU dada. • Distribución exponencial que se describe en términos de su media. • Cálculos de: • Rendimiento promedio. • Tiempo de espera ... „ Sistema informático como: • Red de servidores, cada servidor con su cola de procesos en espera
  • 26. Escuela Universitaria de Informática (Segovia) 26 5.2 Evaluación de políticas de planificación. „ Simulaciones: „ Programación de un modelo del sistema de computación. „ Generación de datos: generador de números aleatorios modificado para generar: • Procesos. • Tiempo de ráfagas de CPU. • Llegadas, partidas, ... „ Problemas: • Simulaciones costosas, requieren mucho tiempo y recursos. • Cintas de rastreo, registran secuencias de sucesos reales, requieren mucho espacio de almacenamiento. • Tarea compleja de diseño, codificación y depuración del simulador.
  • 27. Escuela Universitaria de Informática (Segovia) 27 5.2 Evaluación de políticas de planificación. „ Implementación: „ Método más fiable, forma exacta de evaluar un algoritmo de planificación. „ Metodología: • Codificarlo. • Colocarlo en el SO. • Probar su funcionamiento. „ Problema: • Coste elevado: • Modificación del SO. • Dificultar el trabajo de los usuarios, puesto que el SO está en continuo cambio.
  • 28. Escuela Universitaria de Informática (Segovia) 28 5.2 Evaluación de políticas de planificación. „ Solución: „ Plantear un esquema híbrido del tipo: • 1. Análisis preliminar de las políticas candidatas mediante modelos deterministas. • 2. Simulación de la opción u opciones más ventajosas. • 3. Implementación de la opción óptima: • Primero en un sistema de desarrollo (pruebas). • Finalmente en un sistema de producción. „ Problema: • Entorno dinámico y variable (nuevos programas, nuevos problemas). • Característica deseada: Planificación flexible, separación clara entre mecanismos y políticas.