6 so teo planificacion

30
Sistemas Operativos Curso 2015 Planificación

Upload: jefferson

Post on 17-Aug-2015

214 views

Category:

Documents


0 download

DESCRIPTION

6 SO Teo Planificacion

TRANSCRIPT

Sistemas OperativosCurso 2015PlanificacinSistemas Operativos | Curso 2015 | Planificacin2/30AgendaIntroduccin.espac!ador.Clases de procesos."s#uemas de planificacin.Criterios de planificacin.$l%oritmos de planificacin.&C&S.S'&.Prioridad.(ound)(o*in.+ultilevel),ueue.+ultilevel)&eed*ac-),ueue.Sistemas multiprocesadores.Sistemas Operativos | Curso 2015 | Planificacin3/30Introduccin.a planificacin /scheduling0 es la *ase para lo%rar la multipro%ramacin.1n sistema multipro%ramado tendr2 varios procesos #ue re#uerir2n el recurso procesador a la ve3."sto sucede cuando los procesos est2n en estado ready /pronto0.Si e4iste un procesador disponi*le 5 e4isten procesos en estado ready6 se de*e ele%ir el #ue ser2 asi%nado al recurso para e7ecutar."l componente del sistema operativo #ue reali3a la eleccin del proceso es llamada planificador /scheduler0.Sistemas Operativos | Curso 2015 | Planificacin8/30Tipos de planificador.ar%o pla3oetermina #u9 pro%ramas son admitidos al sistema para e7ecucinControla el %rado de multipro%ramacin+ientras m2s procesos son admitidos6 cada uno tendr2 un porcenta7e menor de uso del procesador+ediano pla3oetermina si a%re%ar m2s pro%ramas a los #ue 5a est2n parcialmente o totalmente en memoria principalCorto pla3oetermina #u9 proceso es e7ecutado en el procesadorSe e7ecuta frecuentemente 5 de*e ser eficiente"vento t:picos #ue desencadena al despac!ador; interrupciones del relo7 /#uantum06 interrupciones de I/O6 llamados al sistemas6 se/30Sortest *o+ 'irst (S*') - ,o e#propiativoDiempo de espera promedio; /0 G > G 3 G @0/8 E 85.04.02.00.0Tiempo de arribo1 P34 P44 P27 P1Burst TimeProcesoP1P3P27 3 16 0P48 12Sistemas Operativos | Curso 2015 | Planificacin1@/30Sortest *o+ 'irst (S*') - !#propiativoDiempo de espera promedio; /B G 1 G 0 G 20/8 E 35.04.02.00.0Tiempo de arribo1 P34 P44 P27 P1Burst TimeProcesoP1P3P24 211 0P45 7P2P116Sistemas Operativos | Curso 2015 | Planificacin1A/30.asados en Prioridad$ cada proceso se le asi%na un n?mero entero #ue representa su prioridad."l planificador asi%na el procesador al proceso con la m2s alta prioridad.Se utili3a en %eneral un es#uema e4propiativo 5a #ue si un proceso con ma5or prioridad #ue el #ue esta e7ecutando arri*a a la lista de procesos listos /ready queue06 ser2 asi%nado al procesador.S'& se puede ver como un al%oritmo de prioridad donde la prioridad esta dada por el pr4imo CPU-burst."s adecuado para sistemas interactivos.Sistemas Operativos | Curso 2015 | Planificacin1B/30.asados en PrioridadSufre de posposicin indefinida 5a #ue un proceso de *a7a prioridad #ui32s no pueda e7ecutar nunca..a solucin es utili3ar prioridades din2micas de enve7ecimiento; incrementar la prioridad se%?n pasa el tiempo sin e7ecutar..a prioridad de un proceso para el uso del recurso procesador de*er2 ser inversamente proporcional al uso #ue el proceso !a%a del mismo.Por lo tanto un proceso tipo I/O-bound de*er2 tener6 en %eneral6 ma5or prioridad #ue uno tipo CPU-bound.Se pueden usar prioridades din2micas para %aranti3ar esoSistemas Operativos | Curso 2015 | Planificacin20/30&ound &o+in (&&)$ cada proceso se le *rinda un intervalo de tiempo para el uso del procesador /time quantum0.$l finali3ar el tiempo6 el procesador le es e4propiado 5 vuelve al estado pronto /ready0 al final de la cola."s f2cil de implementar 5a #ue solamente es necesario una cola de procesos listos. Cuando un proceso consume su quantum es puesto al final de la cola."l quantum de*e ser *astante ma5or a lo #ue lleva reali3ar un cam*io de conte4to6 sino se tendr2 muc!o overhead. $ su ve36 el tiempo de quantum incide en los tiempos de retorno."s ideal para sistemas de tiempo compartido.Co !a5 posposicin indefinidaSistemas Operativos | Curso 2015 | Planificacin21/30&ound &o+in (&&)Por lo %eneral6 tiene un ma5or tiempo de retorno #ue el "#$6 pero me7ora el tiempo de respuesta.68 P324 P417 P253 P1Burst TimeProcesoquantum = 20P1P2P3P4P1P3P4P1P3P30 20 37 57 77 97 117 121 134 154 162Sistemas Operativos | Curso 2015 | Planificacin22/30&ound &o+in (&&)"s necesario asi%nar un tiempo de quantum a7ustado;Si es mu5 c!ico %enerar2 muc!os cam*ios de conte4to.Si es mu5 %rande6 el sistema tender2 a un &C&S.Sistemas Operativos | Curso 2015 | Planificacin23/30&ound &o+in (&&)"l promedio del tiempo de retorno medio var:a se%?n el quantum.Sistemas Operativos | Curso 2015 | Planificacin28/30&ound &o+in (&&)Proceso FCFS RR1 100 9912 200 992... ... ...9 900 99910 1000 1000 Comparacin con &C&S10 procesos #ue necesitan 100 unidades de tiempo son e7ecutados a la ve3Se muestra el tiempo en #ue termina cada uno /despreciando el tiempo perdido en cam*ios de proceso0"l quantum es de 1 unidad de tiempoSistemas Operativos | Curso 2015 | Planificacin25/30/ultilevel 0ueueSi los procesos se pueden clasificar se%?n sus cualidades6 es posi*le dividir la lista de procesos listos /ready queue0 en varias colas /una para cada clasificacin0..os procesos son asi%nados permanentemente a una de las colas.Cada cola tendr2 su propio al%oritmo de planificacin propio.$dem2s6 se de*e tener una estrate%ia de planificacin entre las diferentes colas. Por e7emplo6 una cola tendr2 prioridad so*re otra.Sistemas Operativos | Curso 2015 | Planificacin2>/30/ultilevel 0ueueSistemas Operativos | Curso 2015 | Planificacin2@/30/ultilevel 'eed+ac1 0ueueSe diferencia con el anterior en #ue procesos pueden cam*iar de cola /nivel0.Se *asa en cate%ori3ar los procesos se%?n el uso de CP1 /CPU-burst0 #ue ten%an..a cola de ma5or prioridad ser2 la de los procesos I/O-bound 5 la de menor la de procesos con alto CPU-bound.e esta forma6 se %aranti3a #ue los procesos con poco uso de procesador ten%an ma5or prioridad6 5 los #ue consumen muc!o procesador tendr2n *a7a prioridad..os procesos6 se%?n el consumo de CP1 #ue !a%an6 ser2n promovidos a una cola de ma5or prioridad o re*a7ados a una de menor prioridad.Sistemas Operativos | Curso 2015 | Planificacin2A/30/ultilevel 'eed+ac1 0ueue1n planificador %ultilevel $eedbac& 'ueue es definido por;"l n?mero de colas."l al%oritmo de planificacin para cada cola."l m9todo utili3ado para promover a un proceso a una cola de ma5or prioridad."l m9todo utili3ado para *a7ar a un proceso a una cola de menor prioridad."l m9todo utili3ado para determinar a #ue cola ser2 asi%nado un proceso cuando est9 pronto.Sistemas Operativos | Curso 2015 | Planificacin2B/30/ultilevel 'eed+ac1 0ueueSistemas Operativos | Curso 2015 | Planificacin30/30Sistemas multiprocesadores"n un sistema sim9trico cual#uier procesador podr2 e7ecutar procesos de usuario.1na posi*ilidad es tener una sola lista %lo*al de procesos listosOtra es asi%nar una cola de procesos listos para cada procesador 5 de esa forma mantener los procesos asi%nados a un procesador /afinidad de procesador0."sto es conveniente para aprovec!ar los datos #ue est2n frescos en la memoria cac!e del procesador6 5a #ue al e7ecutar un proceso en un procesador se nutre su cac!e con datos del proceso.e esta forma6 se lo%ra mantener un ma5or :ndice de cache hit 56 por lo tanto6 un ma5or rendimiento en el sistema.1n pro*lema #ue puede sur%ir es un des*alance en la cantidad de tra*a7o por procesador. "n estos casos se mi%rar2n procesos de cola para lo%rar *alancear nuevamente la car%a.