SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
Sistemas Operativos




                                                                                        Intercambio del CPU

                                                                                                       Proceso 1                      Sistema Operativo                Proceso 2
                                                                                             En ejecución
                                                                                                                                          Salvar registros                          Inactivo

                                  Sistemas Operativos                 Profesor:                               Interrupción o
                                                                                                                                                    Dispatcher
                                                                                                                                                    Planificador
        Your picture here                                                                                     llamada al sistema

                                       Ciclo 2012-1             Diaz Muñante Jorge                                                      Restaurar registros


                                                                                                 Inactivo                                                                          En ejecución



                                                                                                                                          Salvar registros

                                                                                                                                   Dispatcher                 Interrupción o
                       Planificacion del Procesador                                                                                Planificador
                                                                                                                                                              llamada al sistema
                                                                                                                                        Restaurar registros                         Inactivo
                                                                                               En ejecución



                                                                                                              Planificador             políticas
                                                                                                              Dispatcher              mecanismos




       Planificador / Despachador                                                       Objetivos

        Planificador.                                                                   1. Ser justa
          Selecciona cual de todos los procesos cargados en                             2. Elevar al máximo la producción o rendimiento
          memoria se encuentra listo para ejecutarse, con la                            3. Aumentar al máximo el número de usuarios interactivos
          intención de asignarle el procesador.                                         4. Ser predecible
        Despachador.
                                                                                        5. Reducir al mínimo el gasto extra
          Es el módulo encargado de dar el control del CPU al
          proceso seleccionado por el planificador, lo que involucra:                   6. Equilibrar el aprovechamiento de recursos
              Cambio de contexto.                                                       7. Lograr equilibrio entre la respuesta y el aprovechamiento
              Cambio a modo usuario.                                                    8. Evitar esperas infinitas
              Saltar a una punto específico del programa de usuario para
              continuar con la ejecución.                                               9. Imponer prioridades
              Latencia de despacho.                                                     10. Dar preferencia a procesos que ocupan recursos decisivos
                Tiempo invertido por el despachador en detener un proceso y reiniciar
                otro.                                                                   11. Dar mejor trato a procesos que muestren un comportamiento deseable.
                                                                                        12. Degradarse paulatinamente de cargas pesadas




       Objetivos                                                                        Objetivos

        1. Ser justa                                                                     2. Elevar al máximo la productividad o rendimiento.
              Debe tratar a todos los procesos de la misma forma y no aplazar                     Maximizar el numero de trabajos procesados por unidad de tiempo.
              indefinidamente ningun proceso. Se evita mediante alguna técnica
              de envejecimiento.




Diaz Muñante Jorge                                                                                                                                                                                1
Sistemas Operativos




       Criterios de planificación                                                Modelos de evaluacion

        Uso CPU: % tiempo que la CPU está ocupada                                  Suponer que tenemos los procesos A, B, y C, que llegan en el tiempo 0
        – Tipicamente entre 40 a 90 %                                              Nosotros deseas calcular el tiempo de respuesta, tiempo de espera y
        Productividad (Throughput): Cantidad de trabajo completada por unidad      tiempo de retorno del proceso A
        de tiempo
        – Depende la duracion de los procesos
        Tiempo de retorno: Tiempo desde que se lanza un proceso para su
        ejecución hasta que termina                                                                                        26
                                                                                              T. Retorno
        – Es la suma del tiempo que esta en la cola de listo, ejecución y
          bloqueado                                                                                            7                6           4     = 17
                                                                                              T. Espera                +            +
        Tiempo de espera. Tiempo que un proceso pasa esperando en la cola de                               3   5 2 3 2          4   1 4     2 3
        procesos listos para ejecutar.                                                   T. Respuesta = 0 A B C A B C A C A C
                                                                                                                                                         Tiempo
        Tiempo medio de espera. Tiempo medio que todos los procesos deben
        esperar.                                                                           Diagrama de Gantt : visualiza como los procesos se ejecutan
        Tiempo de respuesta. Para proceso interactivo es el tiempo que pasa
        desde que se emite una petición hasta que se produce la primera
        respuesta




       Modelos de evaluacion                                                     Modelos de evaluacion


        Ahora deseamos calcular el tiempo de respuesta, tiempo de espera y         Ahora deseamos calcular el tiempo de respuesta, tiempo de espera y
        tiempo de retorno del proceso B                                            tiempo de retorno del proceso C




                   T. Retorno                                                               T. Retorno
                    T. Espera        +                                                       T. Espera             +            +       +
                 T. respuesta                                                            T. Respuesta
                                 3   5 2 3 2      4   1 4   2 3                                            3   5 2 3 2          4   1 4     2 3
                                  A B C A B C A C A C                Tiempo                                A B C A B C A C A C                           Tiempo




       Criterios de planificación                                                 Objetivos

        Concepto de “racha (burst) de CPU” de un proceso:                       4. Ser predecible
        – tiempo que usará la CPU hasta que se bloquea
        – procesos limitados por la CPU (CPU-bound): rachas largas                Un proceso debe ejecutarse aproximadamente en el
                                                                                  mismo tiempo y casi al mismo costo con independencia de
        – procesos limitados por la E/S (I/0-bound): rachas cortas                la carga del sistema.
        Tipos de procesos:
        – Interactivos: I/0-bound, interacción con usuarios
        – De cómputo: CPU-bound, no interacción
        – Con E/S pero no de usuario: I/0-bound, no interacción
        – Tiempo real: garantía en tiempo de respuesta de un proceso
        Tendencia general: Favorecer trabajos con rachas cortas
        – Se favorece procesos interactivos
        – También mejora tiempo de espera medio
          • Teoría de colas: servir primero peticiones más cortas
        – SS.OO. favorecen proc. con mucha E/S aunque no sea interactivo




Diaz Muñante Jorge                                                                                                                                                2
Sistemas Operativos




                                                                                                         Prioridades estáticas y dinámicas
       Administracion Apropiada y No Apropiada


        No apropiada                                                              Prioridades estáticas
        – Una vez que el CPU se le asignó al proceso, ya no se le puede           Prioridades estáticas no cambian
          arrebatar
                                                                                  Son fáciles de llevar a la práctica
        – Útil sistemas procesos alta prioridad requieren atención inmediata,
          (sistemas tiempo real)                                                  No responden a cambios en el ambiente
        – Los trabajos largos atrasan a los cortos, pero el tratamiento es más
          justo
                                                                                  Prioridades dinámicas
                                                                                  Responden a los cambios (inanición es solucionado con una política de
        Apropiada                                                                 envejecimiento)
        – Al proceso se le puede arrebatar el CPU                                 Prioridad inicial tiene una duración corta, después de lo cual se ajusta a
        – Útil sistemas tiempo compartido: garantizar tiempos de respuesta        un valor más apropiado
          aceptables
                                                                                  - Esquemas más complejos
        – Costo: cambio de contexto implica gasto extra
                                                                                  - Gasto extra justificado: aumento en la sensibilidad del sistema




                                 Prioridades compradas
                                                                                 FCFS o PEPS

                                                                                 First-Come, First-Served (FCFS) o PEPS
          - Debe proporcionar un servicio competente y razonable a una gran         Tambien “First In, First Out” (FIFO)
                                                                                      • En los primeros sistemas, un proceso era planificado
              comunidad de usuarios.                                                  • Hasta que finalizaba (incluyendo I/O)
                                                                                      • Ahora, mantiene el CPU hasta que se bloquea
                                                                                 Ejemplo:             Proceso Tiempo Racha
          - Debe manejar las situaciones en las cuales un miembro de la                                  P1            24
              comunidad necesite un trato especial                                                       P2             3
                                                                                                         P3              3
                                                                                     Suponga que los procesos arriban en este orden: P1 , P2 , P3
                                                                                     Ell diagrama de Gantt es :
          - Trabajo urgente => dispuesto a pagar extra:
                        comprar prioridad
                                                                                                                P1                         P2        P3

                    (nivel más alto de servicio)
                                                                                                0                                    24         27        30
                                                                                    Tiempo de espera para P1 = 0; P2 = 24; P3 = 27
                                                                                    Tiempo promedio de espera: (0 + 24 + 27)/3 = 17
          - Pago extra obligatorio                                                  Tiempo promedio terminado: (24 + 27 + 30)/3 = 27
             puede ser necesario arrebatar recursos a otros usuarios que         Efecto Convoy procesos largos hacen esperara a los pequeños
             también pagan




       FCFS …                                                                    Round Robin o por Turnos
           Otro ejemplo:
              Supongamos que este sea el orden de llegada: P2 , P3 , P1
              El diagrama de Gantt seria:                                         Politica
                                                                                  – Cada proceso obtiene una pequeño tiempo para uso del CPU
                                                                                    (Quantum), usualmente 10-100 milisegundos
                        P2       P3                 P1
                                                                                  – Si el quantum expira, el proceso es interrumpido y enviado al final de la
                                                                                    cola.
                    0        3        6                        30

              Tiempo de espera para P1 = 6; P2 = 0; P3 = 3
              Tiempo promedio de espera: (6 + 0 + 3)/3 = 3
              Tiempo promedio de terminado: (3 + 6 + 30)/3 = 13
           En el segundo caso:
              Tiempo promedio de espera es mucho mejor (antes era 17)             Desempeño
              Tiempo promedio de terminado es mejor (antes era 27)                – q es grande                 ⇒ FCFS
           Pro y Cons :
                                                                                  – q es pequeño                ⇒ Excesivo gasto extra
              Simple (+)
              Proceso corto tiene que llegar antes (-)                            – q debe ser lo suficiente grande para que la mayoria de los procesos
                                                                                    interactivos acaben en una sola racha




Diaz Muñante Jorge                                                                                                                                              3
Sistemas Operativos




                                                                                             Ejemplo con diferentes q
       Ejemplo de RB con q = 20
                            Process     Burst Time
                              P1            53 33 13                       0                                 P2   P4       P1                        P3
                               P2           08
                                                                                                  + FCFS:    [8] [24]     [53]                      [68]
                                                 0
                               P3           68 48 28                       8   0                            0 8       32                   85                153
                               P4           24   4 0                                                      Quantu    P1    P2               P3        P4     Promd
             Gantt chart: (Time Quantum = 20)                                                                m
                                                                                                          + FCFS    32    0               85         8     31¼
                                                                                                           Q=1      84   22               85        57      62
                         P1    P2    P3     P4     P1     P3   P4     P1       P3   P3       Tiempo
                                                                                                           Q=5      82   20               85        58     61¼
                                                                                               De
                     0    20    28     48        68     88 108 112 125 145 153                             Q=8      80    8               85        56     57¼
                                                                                             Espera
                                                                                                          Q = 10    82   10               85        68     61¼
                    Tiempo de espera para      P1=(68-20)+(112-88)=72
                                                                                                          Q = 20    72   20               85        88     66¼
                                                P2=(20-0)=20
                                                P3=(28-0)+(88-48)+(125-108)=85                            - FCFS    68   145               0        121    83½
                                                P4=(48-0)+(108-68)=88                                     + FCFS    85    8               153       32     69½
                   Tiempo Promedio de espera = (72+20+85+88)/4=66¼                                         Q=1     137   30               153       81     100½
                   Tiempo promedio de terminado = (125+28+153+112)/4 = 104½                   Tiempo       Q=5     135   28               153       82     99½
                Pros and Cons:                                                               terminad      Q=8     133   16               153       80     95½
                   Mejor para los procesos cortos (+)                                            o
                                                                                                          Q = 10   135   18               153       92     99½
                   Tiempo cambio de contexto hay que sumarlo para los procesos largos (-)                 Q = 20   125   28               153       112    104½
                      • Por lo general es 0.1ms – 1ms – alrededor de 1% de sobrecarga
                                                                                                          - FCFS   121   153              68        145    121¾




       Colas Multinivel                                                                     Planificación con colas multinivel
                                                                                            Colas multinivel realimentadas

        Objetivo: Diferenciar entre distintos tipos de trabajos                              Técnicas adaptativas
        Existen colas separadas en función del tipo de trabajo                               – Los trabajos cambian de prioridad y de cola
        Cada cola tiene su propio algoritmo de planificación                                 Consideraciones:
        Debe existir otro algoritmo para elegir la cola en cada momento                      – El algoritmo de planificación de cada cola
                                                                                             – Métodos para ascender y descender entre colas
                    Prioridad alta               Tareas del sistema
                                                                                             – Dónde poner inicialmente a los trabajos
                                                                                                             +                 Tareas de TR
                                                 Tareas interactivas
                                                                                                       Prioridad                  Quantum = 10
                                                 Tareas de edición
                                                                                                                                  Quantum = 20
                    Prioridad baja                    Tareas batch
                                                                                                                                       FCFS
                                                                                                                –




       Multicolas                                                                           Proceso mas corto (SJF)

                                                                                              - Disciplina no apropiada

                                                                                              - Se ejecuta primero el proceso en espera que tiene el menor tiempo estimado
                                                                                                  de ejecución hasta terminar

                                                                                              - Reduce el tiempo de espera promedio de PEPS
                                                                                              - Favorece procesos cortos a expensas de los largos
                                                                                              - Selecciona procesos asegurandose que el siguiente proceso se completará
                                                                                                  y saldrá del sistema lo antes posible
                                                                                              - Conocimiento tiempo de ejecución de un proceso:
                                                                                                 se basa en los tiempos de ejecución estimados por el usuario (
                                                                                                 PELIGRO!!!!!)
                                                                                              - No resulta útil en sistemas de tiempo compartido




Diaz Muñante Jorge                                                                                                                                                           4
Sistemas Operativos




                      Ejemplo del algoritmo                                                Admon. por el tiempo restante más corto
                                                                                                            (SRT)

                Cuatro tareas:
                      A: tiempo ejecución 8 minutos
                      B: tiempo ejecución 4 minutos                                  - La contraparte de la anterior
                      C: tiempo ejecución 4 minutos
                                                                                     - Util en tiempo compartido
                      D: tiempo ejecución 4 minutos
                D     C        B         A                                           - El proceso con el menor tiempo estimado de ejecución para terminar es el
                                                                                          primero en ejecutarse, (incluyendo procesos nuevos)
                                                                                     - Un proceso en ejecución puede ser desposeído por uno nuevo con menor
             Tiempos regreso, ejecución en ese orden:                                    tiempo de ejecución estimado
                   A: 8 mins, B: 12 mins, C: 16 mins, D: 20 mins
             Promedio: 14 mins                                                       - También requiere estimaciones
                                                                                     - Implica un mayor gasto extra:
             Cambiando el orden, (más corto primero):
                                                                                        pendiente del trabajo en ejecución
                     A        D      C        B
                                                                                        manejar apropiaciones ocasionales
               Tiempos regreso:                                                      - Procesos pequeños se ejecutan casi de inmediato
                     B: 4 mins, C: 8 mins, D: 12 mins, A: 20 mins
                                                                                     - Procesos grandes cuentan con un tiempo promedio de espera más grande, y
               Promedio: 11 mins                                                         tiempos de espera más variados que en SJF




       SJF vs SRT                                                                  SJF vs SRT

                                                                                                                                 SJF (Proceso mas corto)
        Proceso                Tiempo Llegada            Uso CPU
        P1                               0                                8               P1=8                     P2=4        P4=5             P3=9
        P2                               1                                4         0 1 2 3                   8           12             17                       26
        P3                               2                                9
                                                                                      P2                           Cola de listo = (P2)
        P4                               3                                5                P3                      Cola de listo = (P2,P3)
                                                                                             P4                    Cola de listo = (P2,P4,P3)

                                                                                      TeP1=0                    TfP1=8
                                                                                      TeP2=7                    TfP2=11             TfProm = 14.5 ms
                                                                                      TeP3=15                   TfP3=24
                                                                                      TeP4=9                    TfP4=14




       SJF vs SRT                                                                  Por loteria

                                         SRT (Tiempo restante mas corto)            Carácter aleatorio
         P1=8 P2=4  P4=5                          P1=7             P3=9             Cada proceso posee un “billete” de lotería
        0    1 23 5                      10               17                  26    Planificador: escoge billete y selecciona al premiado
                                                                                    Procesos “importantes” pueden tener varios billetes
                P2                       Cola de listo = (P1)
                                                                                    Procesos cooperantes pueden intercambiarse billetes:
                     P3                  Cola de listo = (P1,P3)
                       P4                Cola de listo = (P4,P1,P3)                 – Proceso cliente una vez hecha la petición puede
                                                                                      ceder sus billetes al servidor
         TeP1=9                   TfP1=17
         TeP2=0                   TfP2=4            Tfprom = 13 ms
         TeP3=15                  TfP3=24
         TeP4=2                   TfP4=7




Diaz Muñante Jorge                                                                                                                                                     5
Sistemas Operativos




       Planificación Procesos Unix                                                Procesos Unix … cont..

        Diseñado para dar una buena respuesta a los procesos interactivos          Bajo nivel utiliza varias colas, cada cola esta asociada a un
        Algoritmo de dos niveles:                                                  valor de prioridad
                bajo nivel : elige dentro del conjunto de procesos en memoria y    Procesos a ejecutar en modo usuario tienen valores positivos
        listos para ejecutarse
              alto nivel : desplaza los procesos entre la memoria y el disco,
                                                                                   Proceso en modo núcleo tienen valores negativos
        (procesos tiene oportunidad de estar en memoria y ejecutarse).             Valores negativos tienen máxima prioridad, y positivos
                                                                                   tienen la mínima
                                                                                   En las colas se encuentran sólo los procesos que estan en
                                                                                   memoria listos para su ejecución.




       Procesos Unix … cont..                                                     Procesos Unix … cont..

        Admon. busca colas que comienzan en máxima prioridad:                      Cada segundo se vuelven a calcular prioridades procesos:
        –     - elige primer proceso cola y lo incia                               – se dividen entre 2 los contadores de uso CPU (procesos
        –     - permite ejecución durante un quantum, (~                             no tienen castigo por uso anterior CPU)
            100mseg)                                                               – se calcula la prioridad de cada proceso:
        Si proceso agota su quantum:                                                 Nueva prioridad = base + uso CPU
        – se coloca al final de la cola                                            En general base=0
        – se ejecuta el algoritmo de planificación de nuevo                        – usuario que prefiera un servicio peor que el              normal:
                                                                                     asignarle valor positivo mediante llamada nice()
        – procesos con igual prioridad comparten CPU con
         un algoritmo de round-robin                                               – solo un superusuario puede pedir un servicio mejor




       Procesos Unix … cont..                                                     Planificacion del cpu - UNIX
                                                                                    Mínima                                   procesos formados en el
         Cuando proceso se bloquea porque espera un resultado de una llamada       prioridad                                   nivel de prioridad 3
        de sistema, se le elimina de la cola puesto que no se puede ejecutar:                             :
                                                                                                          :
        – - ocurre el evento: se le coloca en una cola con                                                                             procesos en
                                                                                    3     Prioridad del usuario 3                      modo usuario
         valor negativo                                                             2     Prioridad del usuario 2                       en espera
                                                                                    1     Prioridad del usuario 1
        – - idea: sacar procesos del núcleo de manera
                                                                                    0     Prioridad del usuario 0
         rápida
                                                                                    -1   En espera del hijo para concluir
                                                                                    -2   En espera de la salida de la terminal
                                                                                    -3   En espera de la entrada de la terminal
                                                                                                                                          procesos en
                                                                                    -4   En espera del buffer del disco                   modo núcleo
                                                                                    -5   En espera de E/S del disco                        en espera

                                                                                    Máxima                 :
                                                                                   prioridad               :




Diaz Muñante Jorge                                                                                                                                       6
Sistemas Operativos




       Planificador de Solaris                                         Planificación de Solaris
               Prioridad    Quantum         Expira     Regresa de
                                           Quantum     bloqueado
                   0           200            0            50
                   5           200            0            50
                  10           160            0            51
                  15           160            5            51
                  20           120           10            52
                  25           120           15            52
                  30           80            20            53
                  35           80            25            54
                  40           40            30            55
                  45           40            35            56
                  50           40            40            57
                  55           40            45            58
                  59           20            49            59




       Planificacion de Solaris                                        Planificacion de Solaris


        Basada en prioridades. 4 clases:                                Los procesos interactivos suelen tener la prioridad más alta,
        – 1. Tiempo real                                                los procesos limitados por al CPU tienen la prioridad más
                                                                        baja. Esta política de planificación proporciona un buen
        – 2. Sistema                                                    tiempo de respuesta para los procesos interactivos y una
        – 3. Tiempo compartido                                          buena tasa de procesamiento para la clase de tiempo
                                                                        compartido.
        – 4. Interactiva.
        La clase predeterminada es la de tiempo compartido.
        – modifica dinámicamente las prioridades y asigna Q de
          diferente duración usando colas multinivel realimentadas.
        – Existe una relación inversa entre las prioridades y los Q.
          Cuando más alta sea la prioridad, más pequeño será el Q y
          cuando menor sea la prioridad, más larga será la franja.




Diaz Muñante Jorge                                                                                                                      7

Más contenido relacionado

La actualidad más candente

Sistema de Gestion de Mantenimiento Maximo
Sistema de Gestion de Mantenimiento MaximoSistema de Gestion de Mantenimiento Maximo
Sistema de Gestion de Mantenimiento MaximoDario
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesosbfcorralesx
 
Manejo de procesos y procesador
Manejo de procesos y procesadorManejo de procesos y procesador
Manejo de procesos y procesadorMichael Vanegas
 
Inf 324 01_03_planificadores
Inf 324 01_03_planificadoresInf 324 01_03_planificadores
Inf 324 01_03_planificadoresmariavictoria0000
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesadorFernando Camacho
 
Procesos Planificacion de los Sistemas Operativos
 Procesos Planificacion de los Sistemas Operativos Procesos Planificacion de los Sistemas Operativos
Procesos Planificacion de los Sistemas OperativosG Hoyos A
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Javier Alvarez
 
Introducción a los procesos alfa ii
Introducción a los procesos alfa iiIntroducción a los procesos alfa ii
Introducción a los procesos alfa iiAlejandro Ordoñez
 
Planificación de un_proceso
Planificación de un_procesoPlanificación de un_proceso
Planificación de un_procesosiamu_evap
 
Unidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del ProcesadorUnidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del ProcesadorUPTM
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesadorManuel Ceron
 
Descripcion y control de procesos
Descripcion y control de procesosDescripcion y control de procesos
Descripcion y control de procesosECCI
 
Sistema de computación procesos
Sistema de computación procesosSistema de computación procesos
Sistema de computación procesosluis alejandro
 

La actualidad más candente (20)

Parte u 3
Parte u 3Parte u 3
Parte u 3
 
Sistema de Gestion de Mantenimiento Maximo
Sistema de Gestion de Mantenimiento MaximoSistema de Gestion de Mantenimiento Maximo
Sistema de Gestion de Mantenimiento Maximo
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Manejo de procesos y procesador
Manejo de procesos y procesadorManejo de procesos y procesador
Manejo de procesos y procesador
 
Inf 324 01_03_planificadores
Inf 324 01_03_planificadoresInf 324 01_03_planificadores
Inf 324 01_03_planificadores
 
Administración de procesos y del procesador
Administración de procesos y del procesadorAdministración de procesos y del procesador
Administración de procesos y del procesador
 
Procesos Planificacion de los Sistemas Operativos
 Procesos Planificacion de los Sistemas Operativos Procesos Planificacion de los Sistemas Operativos
Procesos Planificacion de los Sistemas Operativos
 
Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)Introduccion a la administracion de los procesos y el procesador (S.O)
Introduccion a la administracion de los procesos y el procesador (S.O)
 
Introducción a los procesos alfa ii
Introducción a los procesos alfa iiIntroducción a los procesos alfa ii
Introducción a los procesos alfa ii
 
Planificación de un_proceso
Planificación de un_procesoPlanificación de un_proceso
Planificación de un_proceso
 
Trabajo de sisope
Trabajo de sisopeTrabajo de sisope
Trabajo de sisope
 
Unidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del ProcesadorUnidad 4: Procesos y Administracion del Procesador
Unidad 4: Procesos y Administracion del Procesador
 
Planificacion del procesador
Planificacion del procesadorPlanificacion del procesador
Planificacion del procesador
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Manual de Contabilidad General GBS
Manual de Contabilidad General GBSManual de Contabilidad General GBS
Manual de Contabilidad General GBS
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
2003 Clase0610
2003 Clase06102003 Clase0610
2003 Clase0610
 
Descripcion y control de procesos
Descripcion y control de procesosDescripcion y control de procesos
Descripcion y control de procesos
 
Sistema de computación procesos
Sistema de computación procesosSistema de computación procesos
Sistema de computación procesos
 
Procesos
ProcesosProcesos
Procesos
 

Similar a SO-Planificación

tecnologia 13 octubre 2011
tecnologia 13 octubre 2011tecnologia 13 octubre 2011
tecnologia 13 octubre 2011anyomave
 
Planificacion De Procesos y Procesadores
Planificacion De Procesos y ProcesadoresPlanificacion De Procesos y Procesadores
Planificacion De Procesos y ProcesadoresPkacho
 
Capitulo 4 grupo 1
Capitulo 4 grupo 1Capitulo 4 grupo 1
Capitulo 4 grupo 1ecuatareas
 
Revista Adm dl Procesador
Revista Adm dl ProcesadorRevista Adm dl Procesador
Revista Adm dl ProcesadorGene Beiia
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosAmandita_Jiss
 
Gestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativosGestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativoschikscorpion_23
 
Gestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativosGestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativoschikscorpion_23
 
PLANIFICACION DE PROCESO
PLANIFICACION DE PROCESOPLANIFICACION DE PROCESO
PLANIFICACION DE PROCESOgladysmamani
 
PLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSPLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSgladysmamani
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesosYoselvi
 
Planificacion de Porcesos
Planificacion de PorcesosPlanificacion de Porcesos
Planificacion de Porcesosguest18b3b79
 
planificacion de los procesos
planificacion de los procesosplanificacion de los procesos
planificacion de los procesosvianycari
 
Planificaion De Procesos
Planificaion De ProcesosPlanificaion De Procesos
Planificaion De Procesoslaunica
 
Planificaion de Procesos
Planificaion de ProcesosPlanificaion de Procesos
Planificaion de ProcesosFiorelaLV
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSgladysmamani
 
expoci
expociexpoci
expociamluap
 
PLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOSPLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOSmerycondori
 

Similar a SO-Planificación (20)

tecnologia 13 octubre 2011
tecnologia 13 octubre 2011tecnologia 13 octubre 2011
tecnologia 13 octubre 2011
 
Planificacion De Procesos y Procesadores
Planificacion De Procesos y ProcesadoresPlanificacion De Procesos y Procesadores
Planificacion De Procesos y Procesadores
 
Tipos de p`lanificacion
Tipos de p`lanificacionTipos de p`lanificacion
Tipos de p`lanificacion
 
Capitulo 4 grupo 1
Capitulo 4 grupo 1Capitulo 4 grupo 1
Capitulo 4 grupo 1
 
Revista Adm dl Procesador
Revista Adm dl ProcesadorRevista Adm dl Procesador
Revista Adm dl Procesador
 
Servicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de ProcesosServicios de los Sistemas Operativos para la Gestion de Procesos
Servicios de los Sistemas Operativos para la Gestion de Procesos
 
Gestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativosGestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativos
 
Gestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativosGestión de procesos en sistemas operativos
Gestión de procesos en sistemas operativos
 
Administración de cpu
Administración de cpuAdministración de cpu
Administración de cpu
 
PLANIFICACION DE PROCESO
PLANIFICACION DE PROCESOPLANIFICACION DE PROCESO
PLANIFICACION DE PROCESO
 
PLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSPLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOS
 
Planificacion de procesos
Planificacion de procesosPlanificacion de procesos
Planificacion de procesos
 
Planificacion de Porcesos
Planificacion de PorcesosPlanificacion de Porcesos
Planificacion de Porcesos
 
PLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOSPLANIFICACION DE PROCESOS
PLANIFICACION DE PROCESOS
 
planificacion de los procesos
planificacion de los procesosplanificacion de los procesos
planificacion de los procesos
 
Planificaion De Procesos
Planificaion De ProcesosPlanificaion De Procesos
Planificaion De Procesos
 
Planificaion de Procesos
Planificaion de ProcesosPlanificaion de Procesos
Planificaion de Procesos
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS
 
expoci
expociexpoci
expoci
 
PLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOSPLANIFICACION DE PROSECOS
PLANIFICACION DE PROSECOS
 

Más de Julio Pari

Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...
Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...
Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...Julio Pari
 
Links kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Links kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en KubernetesLinks kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Links kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en KubernetesJulio Pari
 
Comandos - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Comandos - Evento - Virtual Lab Despliegue de aplicaciones en KubernetesComandos - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Comandos - Evento - Virtual Lab Despliegue de aplicaciones en KubernetesJulio Pari
 
Indice General Tesis Sistemas UPC
Indice General Tesis Sistemas UPCIndice General Tesis Sistemas UPC
Indice General Tesis Sistemas UPCJulio Pari
 
Arquitectura Web FISI UNMSM
Arquitectura Web FISI UNMSMArquitectura Web FISI UNMSM
Arquitectura Web FISI UNMSMJulio Pari
 
Jelastic Enterprise
Jelastic EnterpriseJelastic Enterprise
Jelastic EnterpriseJulio Pari
 
Marketing Examen Parcial Profesor Osorio
Marketing Examen Parcial Profesor OsorioMarketing Examen Parcial Profesor Osorio
Marketing Examen Parcial Profesor OsorioJulio Pari
 
Ingenieria Software Examen Parcial 2013 2 Profesor Cordero
Ingenieria Software Examen Parcial 2013 2 Profesor CorderoIngenieria Software Examen Parcial 2013 2 Profesor Cordero
Ingenieria Software Examen Parcial 2013 2 Profesor CorderoJulio Pari
 
Documento de Arquitectura
Documento de ArquitecturaDocumento de Arquitectura
Documento de ArquitecturaJulio Pari
 
Solucion Examen Parcial Sistemas Digitales UNMSM FISI
Solucion Examen Parcial Sistemas Digitales UNMSM FISISolucion Examen Parcial Sistemas Digitales UNMSM FISI
Solucion Examen Parcial Sistemas Digitales UNMSM FISIJulio Pari
 
Práctica de Inventarios - Investigación Operativa II
Práctica de Inventarios - Investigación Operativa IIPráctica de Inventarios - Investigación Operativa II
Práctica de Inventarios - Investigación Operativa IIJulio Pari
 
Armas silenciosas para guerras tranquilas
Armas silenciosas para guerras tranquilasArmas silenciosas para guerras tranquilas
Armas silenciosas para guerras tranquilasJulio Pari
 
Formato de presentación de Proyecto UNMSM FISI
Formato de presentación de Proyecto UNMSM FISIFormato de presentación de Proyecto UNMSM FISI
Formato de presentación de Proyecto UNMSM FISIJulio Pari
 
Cuento para nuestro hijo y nuestra hija
Cuento para nuestro hijo y nuestra hijaCuento para nuestro hijo y nuestra hija
Cuento para nuestro hijo y nuestra hijaJulio Pari
 
Ingeniería de Software Examen Parcial
Ingeniería de Software Examen ParcialIngeniería de Software Examen Parcial
Ingeniería de Software Examen ParcialJulio Pari
 
Sistemas Distribuidos Examen Parcial
Sistemas Distribuidos Examen ParcialSistemas Distribuidos Examen Parcial
Sistemas Distribuidos Examen ParcialJulio Pari
 
Php07 consultas bd
Php07 consultas bdPhp07 consultas bd
Php07 consultas bdJulio Pari
 
Php06 instalacion my_sql
Php06 instalacion my_sqlPhp06 instalacion my_sql
Php06 instalacion my_sqlJulio Pari
 
Php05 funciones usuario
Php05 funciones usuarioPhp05 funciones usuario
Php05 funciones usuarioJulio Pari
 

Más de Julio Pari (20)

Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...
Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...
Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes #Ibm virtual la...
 
Links kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Links kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en KubernetesLinks kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Links kubernetes - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
 
Comandos - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Comandos - Evento - Virtual Lab Despliegue de aplicaciones en KubernetesComandos - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
Comandos - Evento - Virtual Lab Despliegue de aplicaciones en Kubernetes
 
Indice General Tesis Sistemas UPC
Indice General Tesis Sistemas UPCIndice General Tesis Sistemas UPC
Indice General Tesis Sistemas UPC
 
Arquitectura Web FISI UNMSM
Arquitectura Web FISI UNMSMArquitectura Web FISI UNMSM
Arquitectura Web FISI UNMSM
 
Jelastic Enterprise
Jelastic EnterpriseJelastic Enterprise
Jelastic Enterprise
 
Marketing Examen Parcial Profesor Osorio
Marketing Examen Parcial Profesor OsorioMarketing Examen Parcial Profesor Osorio
Marketing Examen Parcial Profesor Osorio
 
Ingenieria Software Examen Parcial 2013 2 Profesor Cordero
Ingenieria Software Examen Parcial 2013 2 Profesor CorderoIngenieria Software Examen Parcial 2013 2 Profesor Cordero
Ingenieria Software Examen Parcial 2013 2 Profesor Cordero
 
Documento de Arquitectura
Documento de ArquitecturaDocumento de Arquitectura
Documento de Arquitectura
 
Solucion Examen Parcial Sistemas Digitales UNMSM FISI
Solucion Examen Parcial Sistemas Digitales UNMSM FISISolucion Examen Parcial Sistemas Digitales UNMSM FISI
Solucion Examen Parcial Sistemas Digitales UNMSM FISI
 
Práctica de Inventarios - Investigación Operativa II
Práctica de Inventarios - Investigación Operativa IIPráctica de Inventarios - Investigación Operativa II
Práctica de Inventarios - Investigación Operativa II
 
Armas silenciosas para guerras tranquilas
Armas silenciosas para guerras tranquilasArmas silenciosas para guerras tranquilas
Armas silenciosas para guerras tranquilas
 
UML Java
UML JavaUML Java
UML Java
 
Formato de presentación de Proyecto UNMSM FISI
Formato de presentación de Proyecto UNMSM FISIFormato de presentación de Proyecto UNMSM FISI
Formato de presentación de Proyecto UNMSM FISI
 
Cuento para nuestro hijo y nuestra hija
Cuento para nuestro hijo y nuestra hijaCuento para nuestro hijo y nuestra hija
Cuento para nuestro hijo y nuestra hija
 
Ingeniería de Software Examen Parcial
Ingeniería de Software Examen ParcialIngeniería de Software Examen Parcial
Ingeniería de Software Examen Parcial
 
Sistemas Distribuidos Examen Parcial
Sistemas Distribuidos Examen ParcialSistemas Distribuidos Examen Parcial
Sistemas Distribuidos Examen Parcial
 
Php07 consultas bd
Php07 consultas bdPhp07 consultas bd
Php07 consultas bd
 
Php06 instalacion my_sql
Php06 instalacion my_sqlPhp06 instalacion my_sql
Php06 instalacion my_sql
 
Php05 funciones usuario
Php05 funciones usuarioPhp05 funciones usuario
Php05 funciones usuario
 

SO-Planificación

  • 1. Sistemas Operativos Intercambio del CPU Proceso 1 Sistema Operativo Proceso 2 En ejecución Salvar registros Inactivo Sistemas Operativos Profesor: Interrupción o Dispatcher Planificador Your picture here llamada al sistema Ciclo 2012-1 Diaz Muñante Jorge Restaurar registros Inactivo En ejecución Salvar registros Dispatcher Interrupción o Planificacion del Procesador Planificador llamada al sistema Restaurar registros Inactivo En ejecución Planificador políticas Dispatcher mecanismos Planificador / Despachador Objetivos Planificador. 1. Ser justa Selecciona cual de todos los procesos cargados en 2. Elevar al máximo la producción o rendimiento memoria se encuentra listo para ejecutarse, con la 3. Aumentar al máximo el número de usuarios interactivos intención de asignarle el procesador. 4. Ser predecible Despachador. 5. Reducir al mínimo el gasto extra Es el módulo encargado de dar el control del CPU al proceso seleccionado por el planificador, lo que involucra: 6. Equilibrar el aprovechamiento de recursos Cambio de contexto. 7. Lograr equilibrio entre la respuesta y el aprovechamiento Cambio a modo usuario. 8. Evitar esperas infinitas Saltar a una punto específico del programa de usuario para continuar con la ejecución. 9. Imponer prioridades Latencia de despacho. 10. Dar preferencia a procesos que ocupan recursos decisivos Tiempo invertido por el despachador en detener un proceso y reiniciar otro. 11. Dar mejor trato a procesos que muestren un comportamiento deseable. 12. Degradarse paulatinamente de cargas pesadas Objetivos Objetivos 1. Ser justa 2. Elevar al máximo la productividad o rendimiento. Debe tratar a todos los procesos de la misma forma y no aplazar Maximizar el numero de trabajos procesados por unidad de tiempo. indefinidamente ningun proceso. Se evita mediante alguna técnica de envejecimiento. Diaz Muñante Jorge 1
  • 2. Sistemas Operativos Criterios de planificación Modelos de evaluacion Uso CPU: % tiempo que la CPU está ocupada Suponer que tenemos los procesos A, B, y C, que llegan en el tiempo 0 – Tipicamente entre 40 a 90 % Nosotros deseas calcular el tiempo de respuesta, tiempo de espera y Productividad (Throughput): Cantidad de trabajo completada por unidad tiempo de retorno del proceso A de tiempo – Depende la duracion de los procesos Tiempo de retorno: Tiempo desde que se lanza un proceso para su ejecución hasta que termina 26 T. Retorno – Es la suma del tiempo que esta en la cola de listo, ejecución y bloqueado 7 6 4 = 17 T. Espera + + Tiempo de espera. Tiempo que un proceso pasa esperando en la cola de 3 5 2 3 2 4 1 4 2 3 procesos listos para ejecutar. T. Respuesta = 0 A B C A B C A C A C Tiempo Tiempo medio de espera. Tiempo medio que todos los procesos deben esperar. Diagrama de Gantt : visualiza como los procesos se ejecutan Tiempo de respuesta. Para proceso interactivo es el tiempo que pasa desde que se emite una petición hasta que se produce la primera respuesta Modelos de evaluacion Modelos de evaluacion Ahora deseamos calcular el tiempo de respuesta, tiempo de espera y Ahora deseamos calcular el tiempo de respuesta, tiempo de espera y tiempo de retorno del proceso B tiempo de retorno del proceso C T. Retorno T. Retorno T. Espera + T. Espera + + + T. respuesta T. Respuesta 3 5 2 3 2 4 1 4 2 3 3 5 2 3 2 4 1 4 2 3 A B C A B C A C A C Tiempo A B C A B C A C A C Tiempo Criterios de planificación Objetivos Concepto de “racha (burst) de CPU” de un proceso: 4. Ser predecible – tiempo que usará la CPU hasta que se bloquea – procesos limitados por la CPU (CPU-bound): rachas largas Un proceso debe ejecutarse aproximadamente en el mismo tiempo y casi al mismo costo con independencia de – procesos limitados por la E/S (I/0-bound): rachas cortas la carga del sistema. Tipos de procesos: – Interactivos: I/0-bound, interacción con usuarios – De cómputo: CPU-bound, no interacción – Con E/S pero no de usuario: I/0-bound, no interacción – Tiempo real: garantía en tiempo de respuesta de un proceso Tendencia general: Favorecer trabajos con rachas cortas – Se favorece procesos interactivos – También mejora tiempo de espera medio • Teoría de colas: servir primero peticiones más cortas – SS.OO. favorecen proc. con mucha E/S aunque no sea interactivo Diaz Muñante Jorge 2
  • 3. Sistemas Operativos Prioridades estáticas y dinámicas Administracion Apropiada y No Apropiada No apropiada Prioridades estáticas – Una vez que el CPU se le asignó al proceso, ya no se le puede Prioridades estáticas no cambian arrebatar Son fáciles de llevar a la práctica – Útil sistemas procesos alta prioridad requieren atención inmediata, (sistemas tiempo real) No responden a cambios en el ambiente – Los trabajos largos atrasan a los cortos, pero el tratamiento es más justo Prioridades dinámicas Responden a los cambios (inanición es solucionado con una política de Apropiada envejecimiento) – Al proceso se le puede arrebatar el CPU Prioridad inicial tiene una duración corta, después de lo cual se ajusta a – Útil sistemas tiempo compartido: garantizar tiempos de respuesta un valor más apropiado aceptables - Esquemas más complejos – Costo: cambio de contexto implica gasto extra - Gasto extra justificado: aumento en la sensibilidad del sistema Prioridades compradas FCFS o PEPS First-Come, First-Served (FCFS) o PEPS - Debe proporcionar un servicio competente y razonable a una gran Tambien “First In, First Out” (FIFO) • En los primeros sistemas, un proceso era planificado comunidad de usuarios. • Hasta que finalizaba (incluyendo I/O) • Ahora, mantiene el CPU hasta que se bloquea Ejemplo: Proceso Tiempo Racha - Debe manejar las situaciones en las cuales un miembro de la P1 24 comunidad necesite un trato especial P2 3 P3 3 Suponga que los procesos arriban en este orden: P1 , P2 , P3 Ell diagrama de Gantt es : - Trabajo urgente => dispuesto a pagar extra: comprar prioridad P1 P2 P3 (nivel más alto de servicio) 0 24 27 30 Tiempo de espera para P1 = 0; P2 = 24; P3 = 27 Tiempo promedio de espera: (0 + 24 + 27)/3 = 17 - Pago extra obligatorio Tiempo promedio terminado: (24 + 27 + 30)/3 = 27 puede ser necesario arrebatar recursos a otros usuarios que Efecto Convoy procesos largos hacen esperara a los pequeños también pagan FCFS … Round Robin o por Turnos Otro ejemplo: Supongamos que este sea el orden de llegada: P2 , P3 , P1 El diagrama de Gantt seria: Politica – Cada proceso obtiene una pequeño tiempo para uso del CPU (Quantum), usualmente 10-100 milisegundos P2 P3 P1 – Si el quantum expira, el proceso es interrumpido y enviado al final de la cola. 0 3 6 30 Tiempo de espera para P1 = 6; P2 = 0; P3 = 3 Tiempo promedio de espera: (6 + 0 + 3)/3 = 3 Tiempo promedio de terminado: (3 + 6 + 30)/3 = 13 En el segundo caso: Tiempo promedio de espera es mucho mejor (antes era 17) Desempeño Tiempo promedio de terminado es mejor (antes era 27) – q es grande ⇒ FCFS Pro y Cons : – q es pequeño ⇒ Excesivo gasto extra Simple (+) Proceso corto tiene que llegar antes (-) – q debe ser lo suficiente grande para que la mayoria de los procesos interactivos acaben en una sola racha Diaz Muñante Jorge 3
  • 4. Sistemas Operativos Ejemplo con diferentes q Ejemplo de RB con q = 20 Process Burst Time P1 53 33 13 0 P2 P4 P1 P3 P2 08 + FCFS: [8] [24] [53] [68] 0 P3 68 48 28 8 0 0 8 32 85 153 P4 24 4 0 Quantu P1 P2 P3 P4 Promd Gantt chart: (Time Quantum = 20) m + FCFS 32 0 85 8 31¼ Q=1 84 22 85 57 62 P1 P2 P3 P4 P1 P3 P4 P1 P3 P3 Tiempo Q=5 82 20 85 58 61¼ De 0 20 28 48 68 88 108 112 125 145 153 Q=8 80 8 85 56 57¼ Espera Q = 10 82 10 85 68 61¼ Tiempo de espera para P1=(68-20)+(112-88)=72 Q = 20 72 20 85 88 66¼ P2=(20-0)=20 P3=(28-0)+(88-48)+(125-108)=85 - FCFS 68 145 0 121 83½ P4=(48-0)+(108-68)=88 + FCFS 85 8 153 32 69½ Tiempo Promedio de espera = (72+20+85+88)/4=66¼ Q=1 137 30 153 81 100½ Tiempo promedio de terminado = (125+28+153+112)/4 = 104½ Tiempo Q=5 135 28 153 82 99½ Pros and Cons: terminad Q=8 133 16 153 80 95½ Mejor para los procesos cortos (+) o Q = 10 135 18 153 92 99½ Tiempo cambio de contexto hay que sumarlo para los procesos largos (-) Q = 20 125 28 153 112 104½ • Por lo general es 0.1ms – 1ms – alrededor de 1% de sobrecarga - FCFS 121 153 68 145 121¾ Colas Multinivel Planificación con colas multinivel Colas multinivel realimentadas Objetivo: Diferenciar entre distintos tipos de trabajos Técnicas adaptativas Existen colas separadas en función del tipo de trabajo – Los trabajos cambian de prioridad y de cola Cada cola tiene su propio algoritmo de planificación Consideraciones: Debe existir otro algoritmo para elegir la cola en cada momento – El algoritmo de planificación de cada cola – Métodos para ascender y descender entre colas Prioridad alta Tareas del sistema – Dónde poner inicialmente a los trabajos + Tareas de TR Tareas interactivas Prioridad Quantum = 10 Tareas de edición Quantum = 20 Prioridad baja Tareas batch FCFS – Multicolas Proceso mas corto (SJF) - Disciplina no apropiada - Se ejecuta primero el proceso en espera que tiene el menor tiempo estimado de ejecución hasta terminar - Reduce el tiempo de espera promedio de PEPS - Favorece procesos cortos a expensas de los largos - Selecciona procesos asegurandose que el siguiente proceso se completará y saldrá del sistema lo antes posible - Conocimiento tiempo de ejecución de un proceso: se basa en los tiempos de ejecución estimados por el usuario ( PELIGRO!!!!!) - No resulta útil en sistemas de tiempo compartido Diaz Muñante Jorge 4
  • 5. Sistemas Operativos Ejemplo del algoritmo Admon. por el tiempo restante más corto (SRT) Cuatro tareas: A: tiempo ejecución 8 minutos B: tiempo ejecución 4 minutos - La contraparte de la anterior C: tiempo ejecución 4 minutos - Util en tiempo compartido D: tiempo ejecución 4 minutos D C B A - El proceso con el menor tiempo estimado de ejecución para terminar es el primero en ejecutarse, (incluyendo procesos nuevos) - Un proceso en ejecución puede ser desposeído por uno nuevo con menor Tiempos regreso, ejecución en ese orden: tiempo de ejecución estimado A: 8 mins, B: 12 mins, C: 16 mins, D: 20 mins Promedio: 14 mins - También requiere estimaciones - Implica un mayor gasto extra: Cambiando el orden, (más corto primero): pendiente del trabajo en ejecución A D C B manejar apropiaciones ocasionales Tiempos regreso: - Procesos pequeños se ejecutan casi de inmediato B: 4 mins, C: 8 mins, D: 12 mins, A: 20 mins - Procesos grandes cuentan con un tiempo promedio de espera más grande, y Promedio: 11 mins tiempos de espera más variados que en SJF SJF vs SRT SJF vs SRT SJF (Proceso mas corto) Proceso Tiempo Llegada Uso CPU P1 0 8 P1=8 P2=4 P4=5 P3=9 P2 1 4 0 1 2 3 8 12 17 26 P3 2 9 P2 Cola de listo = (P2) P4 3 5 P3 Cola de listo = (P2,P3) P4 Cola de listo = (P2,P4,P3) TeP1=0 TfP1=8 TeP2=7 TfP2=11 TfProm = 14.5 ms TeP3=15 TfP3=24 TeP4=9 TfP4=14 SJF vs SRT Por loteria SRT (Tiempo restante mas corto) Carácter aleatorio P1=8 P2=4 P4=5 P1=7 P3=9 Cada proceso posee un “billete” de lotería 0 1 23 5 10 17 26 Planificador: escoge billete y selecciona al premiado Procesos “importantes” pueden tener varios billetes P2 Cola de listo = (P1) Procesos cooperantes pueden intercambiarse billetes: P3 Cola de listo = (P1,P3) P4 Cola de listo = (P4,P1,P3) – Proceso cliente una vez hecha la petición puede ceder sus billetes al servidor TeP1=9 TfP1=17 TeP2=0 TfP2=4 Tfprom = 13 ms TeP3=15 TfP3=24 TeP4=2 TfP4=7 Diaz Muñante Jorge 5
  • 6. Sistemas Operativos Planificación Procesos Unix Procesos Unix … cont.. Diseñado para dar una buena respuesta a los procesos interactivos Bajo nivel utiliza varias colas, cada cola esta asociada a un Algoritmo de dos niveles: valor de prioridad bajo nivel : elige dentro del conjunto de procesos en memoria y Procesos a ejecutar en modo usuario tienen valores positivos listos para ejecutarse alto nivel : desplaza los procesos entre la memoria y el disco, Proceso en modo núcleo tienen valores negativos (procesos tiene oportunidad de estar en memoria y ejecutarse). Valores negativos tienen máxima prioridad, y positivos tienen la mínima En las colas se encuentran sólo los procesos que estan en memoria listos para su ejecución. Procesos Unix … cont.. Procesos Unix … cont.. Admon. busca colas que comienzan en máxima prioridad: Cada segundo se vuelven a calcular prioridades procesos: – - elige primer proceso cola y lo incia – se dividen entre 2 los contadores de uso CPU (procesos – - permite ejecución durante un quantum, (~ no tienen castigo por uso anterior CPU) 100mseg) – se calcula la prioridad de cada proceso: Si proceso agota su quantum: Nueva prioridad = base + uso CPU – se coloca al final de la cola En general base=0 – se ejecuta el algoritmo de planificación de nuevo – usuario que prefiera un servicio peor que el normal: asignarle valor positivo mediante llamada nice() – procesos con igual prioridad comparten CPU con un algoritmo de round-robin – solo un superusuario puede pedir un servicio mejor Procesos Unix … cont.. Planificacion del cpu - UNIX Mínima procesos formados en el Cuando proceso se bloquea porque espera un resultado de una llamada prioridad nivel de prioridad 3 de sistema, se le elimina de la cola puesto que no se puede ejecutar: : : – - ocurre el evento: se le coloca en una cola con procesos en 3 Prioridad del usuario 3 modo usuario valor negativo 2 Prioridad del usuario 2 en espera 1 Prioridad del usuario 1 – - idea: sacar procesos del núcleo de manera 0 Prioridad del usuario 0 rápida -1 En espera del hijo para concluir -2 En espera de la salida de la terminal -3 En espera de la entrada de la terminal procesos en -4 En espera del buffer del disco modo núcleo -5 En espera de E/S del disco en espera Máxima : prioridad : Diaz Muñante Jorge 6
  • 7. Sistemas Operativos Planificador de Solaris Planificación de Solaris Prioridad Quantum Expira Regresa de Quantum bloqueado 0 200 0 50 5 200 0 50 10 160 0 51 15 160 5 51 20 120 10 52 25 120 15 52 30 80 20 53 35 80 25 54 40 40 30 55 45 40 35 56 50 40 40 57 55 40 45 58 59 20 49 59 Planificacion de Solaris Planificacion de Solaris Basada en prioridades. 4 clases: Los procesos interactivos suelen tener la prioridad más alta, – 1. Tiempo real los procesos limitados por al CPU tienen la prioridad más baja. Esta política de planificación proporciona un buen – 2. Sistema tiempo de respuesta para los procesos interactivos y una – 3. Tiempo compartido buena tasa de procesamiento para la clase de tiempo compartido. – 4. Interactiva. La clase predeterminada es la de tiempo compartido. – modifica dinámicamente las prioridades y asigna Q de diferente duración usando colas multinivel realimentadas. – Existe una relación inversa entre las prioridades y los Q. Cuando más alta sea la prioridad, más pequeño será el Q y cuando menor sea la prioridad, más larga será la franja. Diaz Muñante Jorge 7