clase 3 sistemas operativos administración de procesos

71
Sistemas Operativos Administración de Procesos UNIVERSIDAD INTERNACIONAL SAN ISIDRO LABARDOR Escuela de Ingeniería en Sistemas Cuatrimestre II-2006 Recopilado por Ing. Fernely Artavia Fallas

Upload: gabriel-loria-solis

Post on 19-Feb-2017

120 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: Clase 3 Sistemas Operativos Administración de procesos

Sistemas Operativos Administración de Procesos

UNIVERSIDAD INTERNACIONAL SAN ISIDRO LABARDOREscuela de Ingeniería en Sistemas

Cuatrimestre II-2006

Recopilado porIng. Fernely Artavia Fallas

Page 2: Clase 3 Sistemas Operativos Administración de procesos

Requerimientos de un S.O en Procesos

Intercalar la ejecución de un conjunto de procesos para maximizar el uso del procesado para ofrecer tiempos de respuesta razonables.

Asignar recursos a los procesos de conformidad a una política específica (ejemplo prioridades), evitando el interbloqueo.

Soporte a la comunicación entre procesos y la creación de procesos por parte del usuario.

Page 3: Clase 3 Sistemas Operativos Administración de procesos

ESTADOS DE UN PROCESO

Page 4: Clase 3 Sistemas Operativos Administración de procesos

Modelo de Procesos con Dos Estados El SO controla la ejecución de los procesos

(se necesita saber en qué estado se encuentra cada uno).

Cada proceso puede tener dos estados: En ejecución. No en ejecución.

Abajo se presenta el diagrama de transición de estados.

Page 5: Clase 3 Sistemas Operativos Administración de procesos

Cola de procesos (2 estados)

Page 6: Clase 3 Sistemas Operativos Administración de procesos

Formas de Creación de Procesos1. Nuevo trabajo por lotes. Creación de un

nuevo trabajo.

2. Un nuevo usuario. El usuario entra al sistema iterativo.

3. Creado por el SO para dar un servicio. Ejemplo una impresión.

4. El proceso crea otro proceso.

Page 7: Clase 3 Sistemas Operativos Administración de procesos

Terminación de Procesos Instrucción Halt

incluida en la tarea (bach).

Solicitado por el usuario (salir de sesión).

Terminación normal. Salir del programa. Terminación del

padre. Solicitud del padre.

• Tiempo límite excedido.

• No hay memoria disponible.

• Violación de límites.• Error de protección• Error aritmético• Fallo de E/S (máximo

de intentos)• Instrucción invalidad.• Instrucción

priviligeada.• Violación de memoria.

Page 8: Clase 3 Sistemas Operativos Administración de procesos

Modelo de Procesos con 5 Estados

Page 9: Clase 3 Sistemas Operativos Administración de procesos

Modelo de Procesos con 5 Estados

Corriendo (Running). Proceso en ejecución.

Listo (Ready). Preparado para ser ejecutado, cuando se le de la oportunidad.

Bloqueado (Blocked). Esperan hasta que ocurra un evento o suceso.

Nuevo (New). Proceso nuevo pero no admitido por el sistema

Terminado (Exit). Proceso excluido por el sistema, pero terminado

Page 10: Clase 3 Sistemas Operativos Administración de procesos

Procesos Suspendidos El modelo planteado de tres estados (listo,

ejecución y bloqueado) ayuda mucho, pero no es suficiente.

Dado que para que un proceso se ejecute debe ser cargado en memoria completamente.

Por lo que sería conveniente suspenderlos: El procesador es más rápido que la E/S así que todos los

procesos tendrían que esperar la E/S. Intercambiar esos procesos al disco para liberar más

memoria. Dos nuevos estados:

Bloqueado - suspendido. Listo - suspendido.

Page 11: Clase 3 Sistemas Operativos Administración de procesos

Un estado suspendido

Page 12: Clase 3 Sistemas Operativos Administración de procesos

Dos estados suspendidos

Page 13: Clase 3 Sistemas Operativos Administración de procesos

Razones para suspender procesos

Intercambio (swapping). El SO necesita liberar suficiente memoria RAM para

cargar un nuevo proceso. Otra razon del SO.

El SO puede un proceso que se sospecha causa un problema.

Solicitud del usuario. Por tiempo.

Se ejecuta con cierta frecuencia, entonces mientras no se usa se suspende.

Solicitud del proceso padre. El padre desea suspenderlo para examinar o modificar el

proceso o para coordinar con otros procesos.

Page 14: Clase 3 Sistemas Operativos Administración de procesos

DESCRIPCION DE PROCESO

Page 15: Clase 3 Sistemas Operativos Administración de procesos

Procesos En un entorno multiprogramado muchos procesos

requieren y están haciendo uso de recursos.

¿Qué información necesita el SO para controlar los procesos y administrar los recursos?

Page 16: Clase 3 Sistemas Operativos Administración de procesos

Estructuras de Control del SO Para

administrar todo lo que pasa en el sistema el SO construye y mantiene tablas de información de cada entidad que esté administrando.

Page 17: Clase 3 Sistemas Operativos Administración de procesos

Tablas de Memoria Se utiliza para administrar la memoria

virtual y la memoria real. Asignación de memoria principal a los

procesos. Asignación de memoria secundaria a los

procesos. Atributos de protección para acceso a

regiones de memoria compartida. Información necesaria para administrar la

memoria virtual.

Page 18: Clase 3 Sistemas Operativos Administración de procesos

Tablas de E/S Se utiliza para administrar los

dispositivos y canales DES: Estado del DES: disponible o asignado. Estado de una operación con el DES. Ubicación en la memoria principal que ha sido

usada como fuente o destino de una operación de E/S

Page 19: Clase 3 Sistemas Operativos Administración de procesos

Tabla de Archivos Existencia de archivos.

Ubicación en la memoria secundaria. Estado actual Atributos. A veces esta información es mantenida por el

sistema de administración de archivos (file-management system).

Page 20: Clase 3 Sistemas Operativos Administración de procesos

Tabla de Procesos Permite administrar la información de

cada proceso Donde está ubicado - proceso en memoria - imagen del

proceso

Atributos necesarios para este administrador. Process ID Process state Location in memory

Page 21: Clase 3 Sistemas Operativos Administración de procesos

Estructuras de Control Para que el SO administre los proceso

debe de conocer:

Ubicación de proceso.

Atributos.

Page 22: Clase 3 Sistemas Operativos Administración de procesos

Ubicación de los Procesos

Proceso

Imagen del

Proceso

Memoria RAM

BCP

Programas

Programas

Programas

• Variables locales• Variables

globales• Constantes• Pila• Variables locales• Variables

globales• Constantes• Pila• Variables locales• Variables

globales• Constantes• Pila

user

Page 23: Clase 3 Sistemas Operativos Administración de procesos

Atributos Bloque de Control de Proceso:

Identificación del proceso. Identificadores

Información del estado del procesador. Registros Visibles para el usuario. Registro de control y de estado Punteros de pila

Información de control del proceso. Información de planificación y de estado Estructuración de datos Comunicación entre procesos Privilegios de los procesos Gestión de memoria Propiedad de los recursos y utilización

Page 24: Clase 3 Sistemas Operativos Administración de procesos

CONTROL DE PROCESOS

Page 25: Clase 3 Sistemas Operativos Administración de procesos

Modos de Ejecución Se divide en dos modos para proteger al SO y

sus tablas de ser modificadas por el usuario.

Modo usuario Modo de menor privilegio. Los programas de usuario se ejecutan en este modo

Modo sistema, modo control o modo kernel Modo más privilegiado. Kernel del SO

Page 26: Clase 3 Sistemas Operativos Administración de procesos

Creación de Procesos Cada vez que el SO crea un proceso se

procede de la siguiente manera: Asignar un único identificador del proceso. Asignar espacio para el proceso. Elementos de

la imagen del proceso. Espacio de direcciones privado, de la pila

Inicializar el BCP. Establecer los enlaces apropiados. Colocarlo

en la lista de procesos listos o suspendidos. Crear otras estructuras de control.

Page 27: Clase 3 Sistemas Operativos Administración de procesos

¿Cuándo cambiar un proceso? Interrupción del reloj.

Se le acabó el tiempo máximo de ejecución permitido. Interrupción de E/S.

Inicio de E/S o fin de E/S Fallo de memoria.

Cuando existe un fallo de página (página que no está en memoria)

Cepos (Trap) Determina si el error es fatal. Se puede terminar el proceso, reanudar o suspenderlo

Llamada del Supervisor Cuando un programa llama al SO para ejecutar un

proceso Ejemplo abrir un archivo.

Page 28: Clase 3 Sistemas Operativos Administración de procesos

CONCURRENCIA

Page 29: Clase 3 Sistemas Operativos Administración de procesos

Concurrencia La concurrencia es la simultaneidad de hechos. Un programa concurrente es aquel en el que

ciertas unidades de ejecución internamente secuenciales (procesos o threads), se ejecutan paralela o simultáneamente.

Incluye los siguientes aspectos: comunicación entre procesos. compartición y competencia por los recursos. sincronización de la ejecución de varios procesos. asignación del tiempo de procesador a los procesos.

Surgen en entornos con un solo procesador, con multiprocesadores y proceso distribuido.

Page 30: Clase 3 Sistemas Operativos Administración de procesos

Concurrencia Un programa concurrente está formado por una

colección de procesos secuenciales autónomos que se ejecutan (aparentemente) en paralelo.

Tres formas de ejecutar procesos concurrentes:1. Los procesos multiplexan sus ejecuciones sobre un único

procesador (multiprogramación).2. Los procesos multiplexan sus ejecuciones sobre un sistema

multiprocesador de memoria compartida (multiproceso).3. Los procesos multiplexan sus ejecuciones en varios

procesadores que no comparten memoria (procesamiento distribuido).

El término concurrencia indica paralelismo potencial.

Page 31: Clase 3 Sistemas Operativos Administración de procesos

Concurrencia

multiprogramación multiproceso Procesamientodistribuido

Page 32: Clase 3 Sistemas Operativos Administración de procesos

Concurrencia En un sistema multiprogramado (1 μP),

los procesos se intercalan, para dar la apariencia de simultaneidad.

En un sistema con varios procesadores (n μP), los procesos se superponen.

P1

P2

P3

P1

P2

P3

Page 33: Clase 3 Sistemas Operativos Administración de procesos

Dificultades con la Concurrencia Los problemas generados por la

multiprogramación surgen por que no es posible predecir la velocidad relativa de los procesos:

La actividad de un proceso depende de la actividad de los otros procesos y de la forma cómo el SO trata las interrupciones y las políticas de planificación.

Dificultades: Compartir recursos globales (variable global) Manejar la asignación de recursos Detectar un error es difícil, dado que es difícil

reproducir la situación..

Page 34: Clase 3 Sistemas Operativos Administración de procesos

PROBLEMAS POTENCIALES A RESOLVER

Page 35: Clase 3 Sistemas Operativos Administración de procesos

1. Exclusión mutua

Es un mecanismo empleado en el diseño de los sistemas operativos para evitar los problemas de competencia por recursos, se basa en definir una zona o región crítica la cual está marcada por las instrucciones que hacen uso del recurso en competencia (recurso crítico).

Page 36: Clase 3 Sistemas Operativos Administración de procesos

2. Interbloqueo (deadlock)condiciones : P1 requiere R1 y R2 P2 requiere R1 y R2acciones:1. P1 obtiene R12. P2 obtiene R23. P1 Y P2 están bloqueados esperando cada uno al otro

1

1

R1

R2

P1 P2

0

1

R1

R2

P1 P2

0

0

R1

R2

P1 P2

Page 37: Clase 3 Sistemas Operativos Administración de procesos

3. Inanición

Los procesos siempre están bloqueados y nunca acceden a los recursos que necesitan

Sean 3 procesos. P1 solicita recurso. P2 y P3 solicitan recursos P1 suelta el recurso Se asigna el recurso a P2 P1 solicita el recurso P2 suelta el recurso Se asigna el recurso a P1

Page 38: Clase 3 Sistemas Operativos Administración de procesos

SECCION CRÍTICA

Page 39: Clase 3 Sistemas Operativos Administración de procesos

Sección Crítica Es la parte del programa que

accede a un recurso compartido

Solo un programa puede acceder a su sección crítica en un momento dado.

Ejemplo:solo un proceso en cada momento estará enviando comandos a la impresora

sección crítica

Se suspende la ejecución de la sección crítica hasta que acabe el anterior

Page 40: Clase 3 Sistemas Operativos Administración de procesos

Requerimientos para exclusión mutua1. Exclusión mutua. Sólo un procese accede a la vez a su

SC

2. Un proceso suspendido en su SC no debe estorbar a otros

3. No inanición, no interbloqueo. Si un proceso solicita acceso a su SC no debe demorar su atención.

4. Si ningún proceso está en su SC, no se puede evitar que otro proceso entre a su SC.

5. No suponer la velocidad relativa de los procesos.

6. Se permanece en la SC por un tiempo finito.

Page 41: Clase 3 Sistemas Operativos Administración de procesos

SEMAFOROS

Page 42: Clase 3 Sistemas Operativos Administración de procesos

Semáforos

La variable especial llamado un semáforo es usado para comunicar

Si un proceso está esperando para una señal, es suspendido hasta esa señal se envía

Espera y operaciones de señales no pueden ser interrumpidas

Forme fila están acostumbrado a tener los procesos esperando en el semáforo

Page 43: Clase 3 Sistemas Operativos Administración de procesos

LA LIGA DEL SABER

Hacer tres subgrupos

Page 44: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 1 Escriba tres requerimientos de un S.O en

Procesos.

Page 45: Clase 3 Sistemas Operativos Administración de procesos

Requerimientos de un S.O en Procesos

Intercalar la ejecución de un conjunto de procesos para maximizar el uso del procesado para ofrecer tiempos de respuesta razonables.

Asignar recursos a los procesos de conformidad a una política específica (ejemplo prioridades), evitando el interbloqueo.

Soporte a la comunicación entre procesos y la creación de procesos por parte del usuario.

Page 46: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 2 Escriba los estado del modelo de

Procesos con Dos Estados

Page 47: Clase 3 Sistemas Operativos Administración de procesos

Modelo de Procesos con Dos Estados Cada proceso puede tener dos estados:

En ejecución. No en ejecución.

Page 48: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 3 Escriba tres formas de crear un proceso

Page 49: Clase 3 Sistemas Operativos Administración de procesos

Formas de Creación de Procesos1. Creación de un nuevo trabajo.

2. El usuario entra al sistema iterativo.

3. Creado por el SO para dar un servicio.

4. El proceso crea otro proceso.

Page 50: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 4 Escriba tres maneras de terminar un

proceso

Page 51: Clase 3 Sistemas Operativos Administración de procesos

Terminación de Procesos Instrucción Halt

incluida en la tarea (bach).

Solicitado por el usuario (salir de sesión).

Terminación normal. Salir del programa. Terminación del

padre. Solicitud del padre.

• Tiempo límite excedido.

• No hay memoria disponible.

• Violación de límites.• Error de protección• Error aritmético• Fallo de E/S (máximo

de intentos)• Instrucción invalidad.• Instrucción

priviligeada.• Violación de memoria.

Page 52: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 5 Escriba los estado del modelo de

Procesos con cinco estados

Page 53: Clase 3 Sistemas Operativos Administración de procesos

Modelo de Procesos con 5 Estados

Corriendo (Running). Listo (Ready). Bloqueado (Blocked). Nuevo (New). Terminado (Exit).

Page 54: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 6 Mencione tres razones para suspender

procesos.

Page 55: Clase 3 Sistemas Operativos Administración de procesos

Razones para suspender procesos

Intercambio (swapping). El SO necesita liberar suficiente memoria RAM para

cargar un nuevo proceso. Otra razon del SO.

El SO puede un proceso que se sospecha causa un problema.

Solicitud del usuario. Por tiempo.

Se ejecuta con cierta frecuencia, entonces mientras no se usa se suspende.

Solicitud del proceso padre. El padre desea suspenderlo para examinar o modificar el

proceso o para coordinar con otros procesos.

Page 56: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 7 Qué información necesita el SO para

controlar los procesos y administrar los recursos?

Page 57: Clase 3 Sistemas Operativos Administración de procesos

Para administrar todo lo que pasa en el sistema el SO construye y mantiene tablas de información de cada entidad que esté administrando.

Page 58: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 8 Escriba nombre de las 4 tablas que crea

el SO para controlar los procesos y administrar los recursos

Page 59: Clase 3 Sistemas Operativos Administración de procesos

Tablas de memoria Tablas de E/S Tablas de archivos Tablas de procesos

Page 60: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 9 Para que el SO administre los proceso

debe de conocer y .

Page 61: Clase 3 Sistemas Operativos Administración de procesos

Estructuras de Control Para que el SO administre los proceso

debe de conocer:

Ubicación de proceso.

Atributos.

Page 62: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 10 Mencione por escrito las 5 pasos que

debe hacer un SO cada vez que se crea un proceso.

Page 63: Clase 3 Sistemas Operativos Administración de procesos

Creación de Procesos Cada vez que el SO crea un proceso se

procede de la siguiente manera: Asignar un único identificador del proceso. Asignar espacio para el proceso. Elementos de

la imagen del proceso. Espacio de direcciones privado, de la pila

Inicializar el BCP. Establecer los enlaces apropiados. Colocarlo

en la lista de procesos listos o suspendidos. Crear otras estructuras de control.

Page 64: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 11 Escriba 3 razones por las que un SO debe

cambiar de proceso.

Page 65: Clase 3 Sistemas Operativos Administración de procesos

¿Cuándo cambiar un proceso?

Interrupción del reloj. Se le acabó el tiempo máximo de ejecución permitido.

Interrupción de E/S. Inicio de E/S o fin de E/S

Fallo de memoria. Cuando existe un fallo de página (página que no está

en memoria) Cepos (Trap)

Determina si el error es fatal. Se puede terminar el proceso, reanudar o suspenderlo

Llamada del Supervisor Cuando un programa llama al SO para ejecutar un

proceso Ejemplo abrir un archivo.

Page 66: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 12 ¿Qué es la concurrencia de procesos?

Page 67: Clase 3 Sistemas Operativos Administración de procesos

Concurrencia Un programa concurrente está formado

por una colección de procesos secuenciales autónomos que se ejecutan (aparentemente) en paralelo.

El término concurrencia indica paralelismo potencial.

Page 68: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 13 Explique:

1. Exclusión mutua 2. Interbloqueo (deadlock) 3. Inanición

Page 69: Clase 3 Sistemas Operativos Administración de procesos

1. Exclusión mutua

Es un mecanismo empleado en el diseño de los sistemas operativos para evitar los problemas de competencia por recursos, se basa en definir una zona o región crítica la cual está marcada por las instrucciones que hacen uso del recurso en competencia (recurso crítico).

2. Interbloqueo (deadlock)

condiciones :P1 requiere R1 y R2P2 requiere R1 y R2acciones:1. P1 obtiene R12. P2 obtiene R23. P1 Y P2 están

bloqueados esperando cada uno al otro

3. Inanición

• Los procesos siempre están bloqueados y nunca acceden a los recursos que necesitan

Page 70: Clase 3 Sistemas Operativos Administración de procesos

PREGUNTA 14 ¿Cuál es la función de los semáforos en

los SO?

Page 71: Clase 3 Sistemas Operativos Administración de procesos

Semáforos

Si un proceso está esperando para una señal, es suspendido hasta esa señal se envía