La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sistemas Operativos Procesos.

Presentaciones similares


Presentación del tema: "Sistemas Operativos Procesos."— Transcripción de la presentación:

1 Sistemas Operativos Procesos

2 Concepto de Proceso Un Proceso es un programa en ejecución.
Un proceso es mas que el código del programa, incluye una pila que contiene datos del proceso con variables temporales y globales. A la vez un programa no es un proceso sino que una entidad pasiva. Un proceso es una entidad activa. 17 de agosto de 2004 Cesar Guisado

3 Estado de un proceso Cuando un programa se ejecuta, cambia de estado.
En ejecución: las instrucciones se están ejecutando. En espera: el proceso esta esperando a que ocurra algún suceso (como término de E/S) Listo: el proceso esta esperando que se le asigne procesador. 17 de agosto de 2004 Cesar Guisado

4 Estado de un proceso Proceso Finalizado Nuevo proceso listo
En ejecución En espera 17 de agosto de 2004 Cesar Guisado

5 Bloque de control de proceso
En el SO cada proceso se representa con su propio PCB, que es un bloque de datos que contiene información de un proceso. Estado de un proceso, listo en ejecución o en espera. Contador del programa, indica la dirección de la siguiente instrucción. Registros de la UCP, información para que, por ejemplo, el proceso pueda continuar Información de Planificación de la UCP, prioridades, apuntadores y otros. Información de administración de memoria incluyendo tablas de paginas. Información contable, tiempo real y de UCP utilizado Información de estado de E/S, solicitudes pendientes y dispositivos. 17 de agosto de 2004 Cesar Guisado

6 Bloque de control de proceso
Apuntador Estado del Proceso Numero del proceso Contador del programa registros Limites de memoria Lista de archivos abiertos * 17 de agosto de 2004 Cesar Guisado

7 Procesos Concurrentes
Los procesos del sistema pueden ejecutarse concurrentemente, hay varias razones: Compartir recursos físicos, los recursos son limitados. Compartir recursos lógicos, varios usuarios pueden turnarse en el uso del mismo elemento. Acelerar cálculos: podemos dividir una tarea en varias y ejecutarlas en paralelo. Modularidad: se puede construir sistema en forma modular. Comodidad: ejecutar varias tareas a la vez. 17 de agosto de 2004 Cesar Guisado

8 Relación entre procesos
Procesos pueden ser independientes o cooperativos. Proceso independiente, si no puede afectar o ser afectado por otros procesos, Tiene las siguientes características: Su estado no es compartido de ninguna manera por otro proceso Su ejecución es determinista, el resultado depende solamente del estado de la entrada. Su ejecución es reproducible: el resultado es siempre el mismo para la misma entrada. Su ejecución puede detenerse y reiniciarse sin tener efectos adversos. 17 de agosto de 2004 Cesar Guisado

9 Relación entre procesos
Un proceso es cooperativo si puede afectar o ser afectado por otros procesos, sus características son: Su estado es compartido por otros procesos No puede predecirse el resultado de su ejecución, ya que depende de una secuencia de ejecución El resultado de su ejecución es no determinista, puesto que no siempre será el mismo para la misma entrada 17 de agosto de 2004 Cesar Guisado

10 Trabajo de Investigación
HILOS ¿Que son los HILOS? ¿Cuales son las dos ventajas de los hilos respecto a procesos múltiples? ¿Cuál es su principal desventaja? Proponga una aplicación que se beneficiaría de la utilización de hilos, así como de una que no lo haría. 17 de agosto de 2004 Cesar Guisado

11 Conceptos de planificación
El objetivo de la multiprogramación es maximizar la utilización de la UCP. En multiprogramación, un proceso se ejecuta hasta que tenga que esperar, generalmente que termine una solicitud de E/S Mientras ese proceso espera, la UCP es entregada a otro proceso. De esta manera se aumenta la productividad de la UCP. 17 de agosto de 2004 Cesar Guisado

12 Colas de planificación.
La cola de procesos listos es una cola ligada donde los procesos esperan su ejecución. El encabezado de la cola de procesos listos contiene los apuntadores al primer y ultimo PCB de la lista. Luego de ejecutarse el proceso por un tiempo, el proceso termina o espera por un suceso, por ej. Disco. Si el disco esta ocupado, el proceso espera. Si varios procesos esperan por un dispositivo, se forma una cola para ese dispositivo 17 de agosto de 2004 Cesar Guisado

13 Colas de planificación.
Cola de procesos listos CPU Cola de I/O Solicitud de I/O Fin de la porción de tiempo Se crea un hijo Se ejecuta el hijo Ocurre interrupción En espera de una interrupción 17 de agosto de 2004 Cesar Guisado

14 Planificación de la UCP
El recurso mas importante del sistema es la UCP Muchos procesos compiten por uso de la CPU. De allí la necesidad de planificar su uso La planificación de la UCP es tarea del SO 17 de agosto de 2004 Cesar Guisado

15 Planificación de la UCP
Los procesos pueden describirse como: Limitados por la UCP Si el trabajo con E/S no es significativo Limitados por E/S Si el trabajo con E/S es mas grande que con la UCP 17 de agosto de 2004 Cesar Guisado

16 Planificador de la UCP Cada vez que la UCP esta libre, el SO debe seleccionar un proceso desde la cola de procesos listos. Esta selección la realiza el Planificador de la UCP, el planificador a corto plazo. Los procesos en espera no se ejecutan siempre en un orden FIFO, hay varios algoritmos disponibles 17 de agosto de 2004 Cesar Guisado

17 Estructura de la planificación
Las decisiones de la planificación se realizan de acuerdo a las siguientes circunstancias: Cuando un proceso cambia de estado de ejecución a estado de espera. Cuando un proceso cambia de estado de ejecución a estado listo (cuando ocurre una interrupción). Cuando un proceso cambia de estado de espera a listo. Cuando termina un proceso. 17 de agosto de 2004 Cesar Guisado

18 Estructura de la planificación
Planificación Apropiativa Cuando la planificación tiene lugar en las situaciones 2 y 3 Planificación No Apropiativa Cuando la planificación tiene lugar en las situaciones 1 y 4 17 de agosto de 2004 Cesar Guisado

19 Cambio de contexto Para cambiar la UCP a otro proceso, se requiere guardar el estado del proceso anterior y cargar el estado del nuevo proceso. Esta tarea se llama cambio de contexto. El tiempo requerido para un cambio de contexto varia de maquina a maquina y depende de factores como, numero y velocidad de registros, la velocidad de la memoria 17 de agosto de 2004 Cesar Guisado

20 El Despachador El despachador es otro componente que participa en la función de planificación de la UCP Es el modulo que entrega el control de la UCP al proceso seleccionado. Esta función implica: 17 de agosto de 2004 Cesar Guisado

21 El Despachador Cambiar de contexto Cambiar a modo Usuario
Saltar a la posición adecuada del programa del usuario para reiniciar el programa. 17 de agosto de 2004 Cesar Guisado

22 Algoritmos de Planificación
La planificación de la UCP tiene que ver con el problema de decidir a cual de los procesos que están en la cola de procesos listos se le asignará la UCP. Existen varios algoritmos que pueden favorecer la ejecución de un u otro proceso. Para comparar los algoritmos de planificación existen los siguientes criterios. 17 de agosto de 2004 Cesar Guisado

23 Algoritmos de Planificación
Utilización de la UCP La UCP debe estar ocupada, decimos que una carga normal es entre el 40% y el 90% Productividad Es el número de procesos por unidad de tiempo que se ejecutan. Tiempo de retorno Tiempo en que tarda un proceso en ejecutarse, suma de los periodos de espera en la memoria, espera en la cola de procesos listos, ejecusion y operación de E/S. 17 de agosto de 2004 Cesar Guisado

24 Algoritmos de Planificación
Tiempo de espera Tiempo que el proceso espera en la cola de procesos listos Tiempo de repuesta Tiempo necesario para comenzar a responder. 17 de agosto de 2004 Cesar Guisado

25 Algoritmos de Planificación
Trabajo para Jueves 28 de Abril. Defina y de ejemplos Tiempo de retorno Tiempo de espera Tiempo de respuesta Este trabajo es un trabajo simple, y debe contener definiciones diferentes a las entregadas en clase. (post en Jones) 17 de agosto de 2004 Cesar Guisado

26 Algoritmos de Planificación
Planificación por orden de llegada. Considere el siguiente conjunto de procesos que llegan el instante 0, donde la duración de la ráfaga se expresa en ms: Proceso Duración de la ráfaga P P P 17 de agosto de 2004 Cesar Guisado

27 Algoritmos de Planificación
Proceso Duración de la ráfaga P1 24 P2 3 P3 P1 P2 P3 24 27 30 Tiempo de espera es 0 ms para el proceso P1, 24 ms para el proceso P2 y 27 ms para el proceso P3, tiempo promedio de espera es ( )/3 = 17 ms Si los procesos llegan P2, P3 y P1 17 de agosto de 2004 Cesar Guisado

28 Algoritmos de Planificación
Si los procesos llegan P2, P3 y P1 Tiempo de espera (6+0+3)/3=3ms P2 P3 P1 3 6 30 17 de agosto de 2004 Cesar Guisado

29 Trabajo Pregunta 2 ¿Cual es la incidencia en el tiempo de proceso de procesos limitados por la UCP o limitados por E/S? 17 de agosto de 2004 Cesar Guisado

30 Planificación SJF Proceso Instante de llegada Duración de la ráfaga P1
8 ms P2 1 4ms P3 2 9 ms P4 3 5 ms Si los procesos llegan a la cola de procesos listos en los tiempos indicados, haga una tabla Gantt con planificación SJF apropiativa e indique el tiempo promedio de espera. 17 de agosto de 2004 Cesar Guisado

31 Planificación SJF Proceso Duración de la ráfaga P1 6 P2 8 P3 7 P4 3
Shortest Job First, Primero el trabajo mas breve. Si dos procesos tienen la misma longitud, se utiliza a FCFS Proceso Duración de la ráfaga P1 6 P2 8 P3 7 P4 3 P4 P1 P3 P2 3 9 16 24 El tiempo de espera es 3 ms para P1, 16 ms para P2, 9 ms para P3 y 0 para P4, ( )/4 = 7 ms 17 de agosto de 2004 Cesar Guisado

32 Planificación SJF La planificación SJF que hemos visto en no apropiativa. Que significa que esa planificación sea no apropiativa? Suponga que utilizamos una aplicación SJF apropiativa, ¿Qué significa que sea apropiativa? Responda lo siguiente: 17 de agosto de 2004 Cesar Guisado

33 Trabajo Práctico Investigue el significado de una planificación SJF apropiativa y considere los cuatro procesos siguientes donde la longitud de la ráfaga se proporciona en milisegundos. Proceso Instante de llegada Duración de la ráfaga P1 8 P2 1 4 P3 2 9 P4 3 5 El resultado del promedio apropiativo es de 6.5 ms. ¿Cuál es el resultado de una planificación SJF no apropiativa? 17 de agosto de 2004 Cesar Guisado

34 Trabajo Práctico En la planificación por prioridades, se asigna una prioridad a cada proceso, la prioridad 1 se ejecuta primero. Considere el siguiente conjunto de procesos que llegan en el instante 0 en el orden P1, P2….P5 cuyas longitudes de ráfaga se indican en ms. Proceso Duración de la ráfaga Prioridad P1 10 3 P2 1 P3 2 P4 4 P5 5 17 de agosto de 2004 Cesar Guisado

35 Trabajo Práctico El promedio de la espera del ejercicio anterior es de 6,2 ms. Haga la carta Gantt y explique en detalle como llega al resultado. Pormenores de este ejercicio lo encuentra en el libro de A. Silberschatz, pagina 116. Ud. debe entregar sus resultados al final de la clase. Trabajo Individual, en papel para el 28 de Abril 17 de agosto de 2004 Cesar Guisado


Descargar ppt "Sistemas Operativos Procesos."

Presentaciones similares


Anuncios Google