4 adm procesos

17
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 Programas del Sistema Programas de Aplicación

Transcript of 4 adm procesos

Page 1: 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

Page 2: 4 adm procesos

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.

Page 3: 4 adm procesos

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.

Page 4: 4 adm procesos

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)

Page 5: 4 adm procesos

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

Page 6: 4 adm procesos

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

Page 7: 4 adm procesos

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.)

Page 8: 4 adm procesos

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.

Page 9: 4 adm procesos

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

Page 10: 4 adm procesos

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..

Page 11: 4 adm procesos

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

Page 12: 4 adm procesos

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

Page 13: 4 adm procesos

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

Page 14: 4 adm procesos

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.

Page 15: 4 adm procesos

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..

Page 16: 4 adm procesos

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.

Page 17: 4 adm procesos

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.