4 adm procesos
-
Upload
miguel-alejandro-leon-santos -
Category
Documents
-
view
458 -
download
0
Transcript of 4 adm procesos
1
Responsable de cátedra: Carlos A. Talay 1
Sistemas Operativos
Administración del procesador
Organización de las Computadoras
Responsable de cátedra: Carlos A. Talay 2
Interfaz: Cualquier superficie de contacto.
Software del sistema
El modelo de capas
Procesadores de texto Sistema bancario Juegos
Compiladores Editores Interpretes
Sistema Operativo
Lenguaje de Máquina
Microprogramación
Dispositivos Físicos
Hardware
Programasdel Sistema
Programas deAplicación
2
Responsable de cátedra: Carlos A. Talay 3
Software del sistema
Lenguaje de Bajo Nivel Lenguaje de Alto Nivel
• Poca versatilidad y difícilde programar.
• Se puede Operardirectamente sobre elhardware.
• Es dependiente del hardware
• Gran versatilidad y ampliasfacilidades para desarrollarprogramas.
• Opera a nivel de lasaplicaciones.
• Tiende a ser independientedel hardware.
Responsable de cátedra: Carlos A. Talay 4
Software del sistema
Lenguaje de alto nivel Lenguaje de bajo nivel
Compilador
Interprete
Compilador
En base al programa inicial realizadoen alto nivel (programa fuente),genera una versión compilada llamadaprograma objeto.
Interprete
El interprete traduce línea a línea, entiempo real, cada una de lasinstrucciones del programa fuentecada vez que este es ejecutado.
3
Responsable de cátedra: Carlos A. Talay 5
Sistema Operativo: Es el encargado de constituir una
interfaz entre el usuario y el hardware. Cumple dos
funciones fundamentales:
1) Se comporta como una máquina virtual extendida.
2) Controla los recursos del sistema.
Recurso: Cualquier elemento del sistema.
Sistemas Operativos
Responsable de cátedra: Carlos A. Talay 6
Historia de los Sistemas Operativos
Tercera generación (creación de C.I.): Mayor capacidad, seutiliza memoria particionada y se implementa lamultiprogramación. Sistemas de tiempo compartido.
Segunda generación (Transistores): Mejora la confiabilidad delos equipos, se utilizaba el sistemas de procesamiento porlotes. Se realizaban encadenamiento de tareas.
Cuarta generación (C.I. VLSI): Gran capacidad, se puedenejecutar programas más complejos. S. O. de red y S.O.distribuidos
Primera generación (válvulas de vacío): No existía el SistemaOperativo. Los programadores disponían de un equipo, seprogramaba en lenguaje de máquina.
4
Responsable de cátedra: Carlos A. Talay 7
Definiciones
Trabajo (Job): Conjunto de tareas que realiza uncomputador, varía de acuerdo a la generación a la que nosreferimos. (en 2ª generación equivale a un lote, en 3ª y 4ªa un conjunto de procesos con un objetivo determinado).
Hilo (Thread): Componentes de un proceso que se puedenejecutar independientemente.
Proceso (Process): Un programa en ejecución.
Responsable de cátedra: Carlos A. Talay 8
Relación entre Trabajo, Proceso y Hilo
Trabajo
Proceso (1)
.
.
Proceso (n)
Hilo (1)
.
.
Hilo (m)
5
Responsable de cátedra: Carlos A. Talay 9
Para que un proceso sea ejecutado el código del
programa, o parte de él, éste debe estar ubicado en la
memoria principal del sistema.
Componentesde un proceso
El programaejecutable.
Informacióndel estado
de ejecución.
• Algoritmo.
• Datos.
• Estado de la Pila.
• Estado de los registros.
• Etc.
Componentes de un proceso
Responsable de cátedra: Carlos A. Talay 10
Diagrama de estados
Ejecución
Espera
Listo
Completo
Retención
6
Responsable de cátedra: Carlos A. Talay 11
Administración del procesador
Planificador de Trabajos: Lleva la cuenta de los trabajos enel sistema. Selecciona los trabajos a ejecutarse, crea losprocesos correspondientes y les asigna recursos (espacio dememoria, discos, impresoras, etc.).
Planificador de Procesos: Selecciona el procesador quecorrerá que procesos.
Nos referimos a la asignación de los recursos físicos a losprocesos lógicos. Se analizan dos planificadores:
Responsable de cátedra: Carlos A. Talay 12
Administración del procesadorFunciones del planificador de trabajos
• Llevar el control de estado de todos los trabajos (lleva lacuenta de todos los trabajos del sistema).
• Política (Manejo) por la cual los trabajos entran al sistema.
Para ello existe un JCB (JobControl Block) que es una tabladonde se registran lascondiciones en que se encuentracada trabajo
Identificación de trabajo
Estado actual
Estimación de tiempo de duración
Otros datos
Prioridad
• Asignar y desasignar los recursos necesarios para el trabajo
7
Responsable de cátedra: Carlos A. Talay 13
Para analizar la planificación de trabajos, se considerarán dosmedios específicos:
Análisis de planificación de trabajos
Medio no multiprogramado: Bajo estas condiciones, una vezque se ha asignado un procesador a un proceso, el procesadorno queda liberado hasta que el proceso no concluye.
Medio multiprogramado: En este caso varios procesos hacenuso en forma periódica del procesador. Para ello se designaun tiempo de uso del procesador llamado “cuamtum detiempo” y los procesos en condiciones de ejecutarse utilizaránel procesador hasta que se agote su quántum de tiempo,instante en el cual darán paso al siguiente proceso.
Responsable de cátedra: Carlos A. Talay 14
Ejemplo: Supongamos tener 4 trabajos con una duración de1seg. cada uno.
Análisis de planificación de trabajos
Medio no multiprogramado Medio multiprogramado(quántum = 0,1 seg.)
8
Responsable de cátedra: Carlos A. Talay 15
DefinicionesHora de llegada: Es el momento en que un trabajo ingresa al estado delisto.
Hora de inicio: Es el momento en que un trabajo inicia su ejecución (pasaal estado de ejecución).
Hora de terminación: Es el momento en el cual el trabajo termina deejecutarse (pasa al estado completo).
Tiempo de retorno: Hora de terminación – Hora de llegada
Tiempo de corrida: Es el tiempo que necesita el programa para serejecutado completamente por el procesador.
Tiempo ponderado de retorno: Tiempo de retorno / Tiempo de corrida
Tiempo promedio de vuelta: (∑ Tiempos de retorno) / Cantidad detrabajos
Tiempo de vuelta promedio ponderado: (∑ Tiempos promedio de retorno)/ Cantidad de trabajos
Responsable de cátedra: Carlos A. Talay 16
Planificación de trabajos en un mediono multiprogramado
Supongamos para todos los casos consideramos un esquemaen el cual los arribos de trabajos es del siguiente tipo:
Hora dellegada# Trabajo
Tiempo deejecución
1 10.00 2.00
2 10.10 1.00
3 10.25 0.25
Nota: Los tiempos están expresados en valor decimal.
9
Responsable de cátedra: Carlos A. Talay 17
Hora deinicio
Planificación de trabajos en un mediono multiprogramado
PEPS: Primero que entra primero que sale.
Hora dellegada# Trabajo
Hora determinación
Tiempode retorno
7.90Tiempo promedio de vuelta = 2.63
1 10.00 10.00 12.00 2.00
2 10.10 12.00 13.00 2.90
3 10.25 13.00 13.25 3.00
Nota: Los tiempos están expresados en valor decimal.
Responsable de cátedra: Carlos A. Talay 18
Hora deinicio
Planificación de trabajos en un mediono multiprogramado
Planificación de trabajos comenzando por el trabajo máscorto:
Hora dellegada# Trabajo
Hora determinación
Tiempode retorno
7.15Tiempo promedio de vuelta = 2.38
1 10.00 10.00 12.00 2.00
2 10.10
3 10.25
Nota: Los tiempos están expresados en valor decimal.
12.25 13.25 3.15
12.00 12.25 2.00
10
Responsable de cátedra: Carlos A. Talay 19
Hora deinicio
Planificación de trabajos en un mediono multiprogramado
Planificación de trabajos usando el conocimiento futuro:
Hora dellegada# Trabajo
Hora determinación
Tiempode retorno
5.15Tiempo promedio de vuelta = 1.72( CPU ociosa = 0.25 )
1 10.00
2 10.10
3 10.25
Nota: Los tiempos están expresados en valor decimal.
10.50 11.50 1.40
11.50 13.50 3.50
10.25 10.50 0.25
Responsable de cátedra: Carlos A. Talay 20
Planificación de trabajos en un mediono multiprogramado
Los problemas que se plantean con las estrategias deambiente no multiprogramado son:
1) Cuando un sistema que usa la política de no corrertrabajos largos de inmediato, existe la posibilidad queestos trabajos jamás sean ejecutados.
2) El conocimiento futuro es raro. ( Inversiones en bolsa )
3) Generalmente los tiempos de corrida son aproximacionesestimadas.
4) Se deben considerar los recursos, tales como losrequerimientos de memoria, dispositivos de E/S, etc..
11
Responsable de cátedra: Carlos A. Talay 21
Planificación de trabajos en un mediomultiprogramado
En ambientes de multiprogramación, la política de
implementación de trabajos coincide con la política de
planificación de procesos. La planificación se realiza en
función de la ejecución de la lista de preparados
Responsable de cátedra: Carlos A. Talay 22
Planificación de trabajos en un mediomultiprogramado
Supongamos el siguiente ejemplo de llegada de trabajos:
Hora dellegada# Trabajo
Tiempo deejecución
1 10.00 0.30
2 10.20 0.50
3 10.40 0.10
Nota: Los tiempos están expresados en valor decimal.
4 10.50 0.40
5 10.80 0.10
12
Responsable de cátedra: Carlos A. Talay 23
Ejecución de las tareas del ejercicio en un medio sinmultiprogramado.
Hora deinicio
Hora dellegada
#Trabajo
Hora determinación
Tiempode retorno
2.80Tiempo promedio de vuelta = 0.56
1 10.00 10.00 10.30 0.30 1.00
2 10.20 10.30 10.80 0.60 1.20
3 10.40 10.80 10.90 0.50 5.00
4 10.50 10.90 11.30 0.80 2.00
5 10.8 11.3 11.40 0.60 6.00
Nota: Los tiempos están expresados en valor decimal.
T. Pond.de retorno
15.20
Tiempo de vuelta promedio ponderado = 3.04
Responsable de cátedra: Carlos A. Talay 24
Gráfica resultante
13
Responsable de cátedra: Carlos A. Talay 25
Nota: Los tiempos están expresados en valor decimal.
Ejecución de las tareas del ejercicio en un medio conmultiprogramado.
Hora deinicio
Hora dellegada
#Trabajo
Hora determinación
Tiempode retorno
3.00Tiempo promedio de vuelta = 0.60
1 10.00 10.00 10.40 0.40 1.33
2 10.20 10.20 11.35 1.15 2.30
3 10.40 10.40 10.65 0.25 2.50
4 10.50 10.50 11.40 0.90 2.25
5 10.80 10.80 11.10 0.30 3.00
T. Pond.de retorno
11.38
Tiempo de vuelta promedio ponderado = 2.276
Responsable de cátedra: Carlos A. Talay 26
Gráfica resultante
14
Responsable de cátedra: Carlos A. Talay 27
Administración del procesador
Funciones del Planificador de Procesos
• Llevar el control de estado de todos los procesos (enejecución, listos o en espera).
• Política (Manejo) por la cual los procesos obtienen un procesador, cuándo y por cuanto tiempo.
• Asignar y desasignar los procesadores a los procesos.
Responsable de cátedra: Carlos A. Talay 28
Existe un PCB (ProcessControl Block) que es unatabla donde se registran lascondiciones en que seencuentra cada proceso.
Identificación de proceso
Estado actual
Copia de registros activos
Otros datos
Prioridad
Identificador hacia la lista de otrosprocesos en la lista de estado
En base a esta información se confecciona una orden deejecución de procesos llamada “Lista de preparados” (listaenlazada). Con esta lista normalmente existen dos estrategias,que este desordenada u ordenada por prioridad de proceso.
15
Responsable de cátedra: Carlos A. Talay 29
Planificador a largo plazo: Es la llave reguladora de flujo. Seencarga de dar una mezcla equilibrada de trabajos al P.M.P..
Los planificadores de procesos
Planificador a corto plazo: Es el encargado de determinar queprocesos efectivamente corren y por cuanto tiempo. AsignaCPU a los procesos listos ya cargados en memoria. Puedenreorganizar el orden de acuerdo a un cambio de estado del CPU.
Planificador a mediano plazo: Los procesos que quedan enespera, van a memoria secundaria, el planificador a medianoplazo se encarga de atender a esos procesos y una vez que lacondición de restricción desaparece, se encarga de allanar elcamino para que pueda retornar a ser ejecutados.
Responsable de cátedra: Carlos A. Talay 30
La política de planeación de proceso, debe decidir cuál procesose debe asignar a un procesador y durante cuanto tiempo.La decisión de cuál proceso correr se toma buscando en la listade preparados de las PCB y aplicando alguna de las siguientespolíticas:
Políticas de los planificadores de procesos
1) Torneo mutuo: Cada proceso se corre durante un quántum detiempo y al terminar su quántum otro toma su lugar.
2) Inversa del residuo del quántum: Si el proceso utilizó todosu quántum la vez anterior, va al final de la lista, si utilizó lamitad, a la mitad de la lista, etc..
16
Responsable de cátedra: Carlos A. Talay 31
Políticas de los planificadores de procesos (cont.)
4) Prioridad simple: Se selecciona el trabajo listo de mayorprioridad.
3) Variante de retroalimentación a nivel múltiple en torneomutuo: Cuando entra un nuevo proceso, se corre durante tantosquántums de tiempo como los demás trabajos del sistema yluego se corre en torneo mutuo normal.
5) Torneo mutuo limitado: Los trabajos se corren en torneomutuo hasta un número fijo de veces. Luego solo se corren si nohay otros trabajos en el sistema.
Responsable de cátedra: Carlos A. Talay 32
Políticas de los planificadores de procesos (cont.)
7) Trato preferido a trabajos interactivos: Si un usuario secomunica directamente con su proceso, se da inmediataprioridad a este.
8) Méritos de trabajo: En algunos casos es conveniente que elpropio sistema asigne prioridades. La idea es balancearnecesidades y equilibrar las cargas sobre los dispositivos.
6) Equilibrio del sistema: Para mantener “ocupados” losdispositivos de E/S, se da prioridad a los que hacen uso de estosdispositivos.
17
Responsable de cátedra: Carlos A. Talay 33
Bibliografía
•Organización de computadoras, un enfoque estructurado.Andrew S. Tanenbaum - Prentice Hall
•Sistemas Operativos Modernos .Andrew S. Tanenbaum - Prentice Hall
•Organización y arquitectura de computadoras. William Stallings - Prentice Hall Bibliografía.