La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Unidad 2 – Gestión de Procesos

Presentaciones similares


Presentación del tema: "Unidad 2 – Gestión de Procesos"— Transcripción de la presentación:

1 Unidad 2 – Gestión de Procesos
Sistemas Operativos Unidad 2 – Gestión de Procesos

2 Agenda Concepto de Proceso Planificación de Procesos
Operaciones entre Procesos Comunicación interprocesos

3 Concepto de Proceso

4 Proceso Puede pensarse como un programa en ejecución
Necesita recursos para llevar a cabo su tarea Los sistemas constan de una colección de procesos Los procesos del SO ejecutan código del sistema Los procesos del usuario ejecutan código de usuario Todos estos procesos pueden ejecutarse en forma concurrente

5 Proceso El SO es el responsable de la creación y eliminación de procesos del sistema y de usuario Planifica los procesos y provee de mecanismos para la sincronización, comunicación e interbloqueos en los procesos

6 Proceso Los primeros sistemas informáticos permitían ejectuar un programa a la vez Este programa tenía control total sobre el Sistema y los recursos Actualmente, se pueden cargar varios programas en memoria y se ejecutan concurrentemente Esto, requiere mayor control y aislamiento

7 Estructura del Proceso
El proceso son todas las actividades de la CPU Desde los trabajos de los sistemas de procesamiento por lotes Hasta los programas ejecutados en un Sistema de tiempo compartido Trabajo y proceso se usan indistintamente

8 Estructura del Proceso
Un proceso no es solo código de un programa Incluye la actividad actual representada por un contador de programa y los contenidos de los registros del procesador Incluye también la pila del proceso (con datos temporales) Incluye sección de datos (variables globales) Memoria (memoria asignada dinámicamente)

9 Estructura del Proceso
Pila memoria datos texto Proceso en memoria

10 Estructura del Proceso
Un programa, por sí mismo, no es un proceso Un proceso es una entidad activa, con un CP y conjunto de recursos asociados Un programa se convierte en proceso cuando se carga en memoria Puede haber dos procesos asociados a un mismo programa Un proceso puede crear varios procesos a medida que se ejecuta

11 Estado del Proceso A medida que se ejecuta, cambia de estado
Diagrama de estados de un proceso

12 Bloque de control de proceso
Para el SO un proceso es un bloque de control de proceso (PCB) Un PCB contiene muchos elementos de información: Estado del proceso Contador de Programa (PC) Registros de la CPU Información de planificación de la CPU Información de gestión de memoria Información contable Información del estado de E/S

13 Bloque de control de proceso

14 Agenda Concepto de Proceso Planificación de Procesos
Operaciones entre Procesos Comunicación interprocesos

15 Planificación de Procesos

16 Planificación de Procesos
El objetivo de la multiprogramación es tener en ejecución varios procesos al mismo tiempo El planificador de procesos selecciona un proceso disponible para ejecutar el programa en la CPU En sistemas de un solo procesador, si hay muchos procesos que quieren ejecutarse deberán ser asignados

17 Colas de planificación
A medida que los procesos entran en el Sistema, se colocan en una cola de trabajos Existen varias colas Cola de Procesos preparados Cola de dispositivo (cada dispositivo tiene una)

18 Diagrama de colas

19 Planificadores Los procesos se mueven entras las distintas colas de planificación Los procesos se guardan en cola en un dispositivo de almacenamiento masivo El planificador de largo plazo selecciona procesos de esta cola y los carga en memoria El planificador a corto plazo o de la CPU selecciona procesos de entre los procesos que ya están preparados para su ejecución

20 Planificadores La diferencia radica en la frecuencia de ejecución
El planificador a corto plazo se ejecuta frecuentemente El planificador a largo plazo se ejecuta menos frecuentemente, hasta minutos pueden pasar. El de largo plazo controla la multiprogramación (número de procesos en memoria)

21 Planificadores Los procesos se describen como limitados por la E/S o limitados por la CPU Es importante que el planificador a largo plazo seleccione una adecuada mezcla de procesos Generalmente el planificador de largo plazo no se usa en los sistemas actuales Intercambio se llama al esquema que se adiciona un planificador a medio plazo

22 Agenda Concepto de Proceso Planificación de Procesos
Operaciones entre Procesos Comunicación interprocesos

23 Operaciones entre procesos

24 Operaciones entre procesos
Los sistemas deben proporcionar un mecanismo para la creación y terminación de procesos Un proceso puede crear varios procesos nuevos, dando lugar a un árbol de procesos Los procesos se identifican por medio de un pid Un proceso hijo puede obtener recursos de su padre

25 Operaciones entre procesos
Cuando un proceso crea otro proceso nuevo, existen dos posibilidades en términos de ejecución: El padre continua ejecutándose concurrentemente con su hijo El padre espera hasta que alguno o todos sus hijos han terminado de ejecutarse También existen dos posibilidades en función del espacio de direcciones del nuevo proceso: El proceso hijo es un duplicado del padre El proceso hijo carga un nuevo programa

26 Agenda Concepto de Proceso Planificación de Procesos
Operaciones entre Procesos Comunicación interprocesos

27 Comunicación interprocesos

28 Comunicación interprocesos
Los procesos pueden ser: Independientes Cooperativos Independiente cuando no puede afectar o verse afectado por otro proceso Cooperativos cuando puede afectar o verse afectado por los demás procesos

29 Comunicación interprocesos
La cooperación entre procesos requiere mecanismos de comunicación interprocesos Existen dos modelos de comunicación interprocesos: Memoria compartida Paso de mensajes

30 Comunicación interprocesos

31 Comunicación interprocesos
Memoria compartida Se requiere que se establezca una region de memoria compartida El SO intenta evitar que un proceso acceda a datos de otro En memoria compartida no participa el SO Problema del productor – consumidor para mostrar la memoria compartida

32 Comunicación interprocesos
Paso de mensajes No comparten memoria Los procesos pueden no estar en la misma máquina Proporciona dos operaciones: send y receive Los mensajes pueden ser de tamaño fijo Debe existir un enlace de comunicaciones entre emisor y receptor Formas de implementar un enlace: Comunicación directa o indirecta Comunicación síncrona o asíncrona Almacenamiento en búfer explícito o automático

33 Hebras Una hebra es una unidad básica de utilización de la CPU
Esta formada por ID, un CP, conjuntos de registros y una pila Comparten con otras hebras la sección de código, la sección de datos y otros recursos del SO Varias hebras  más tareas a la vez Ejemplo: servidor web que recibe multiples pedidos

34 Hebras

35 Hebras - Ventajas CAPACIDAD DE RESPUESTA COMPARTICIÓN DE RECURSOS
Continúa ejecutándose incluso si una parte del programa está bloqueado Incrementa la capacidad de respuesta Ej. Explorador web COMPARTICIÓN DE RECURSOS Las hebras comparten memoria y recursos del proceso La ventaja de compartir código y datos es que puede tener varias hebras de actividad diferentes dentro del mismo espacio de direcciones ECONOMÍA Más económico crear y realizar cambios de context entre hebras Por ej. En Solaris es 30 veces más lento crear un proceso que una hebra USO SOBRE ARQ. MULTIPROC. Ventajas en configuraciones multihebras Las hebras se ejecutan en paralelo en diferentes procesadores Incrementan el grado de concurrencia

36 Preguntas?


Descargar ppt "Unidad 2 – Gestión de Procesos"

Presentaciones similares


Anuncios Google