Clase 3 Sistemas Operativos Administración de procesos
1. UNIVERSIDAD INTERNACIONAL SAN ISIDRO LABARDOR
Escuela de Ingeniería en Sistemas
Cuatrimestre II-2006
Recopilado por
Ing. Fernely Artavia Fallas
2. 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.
3.
4. 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.
5.
6. 1. 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.
7. 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.
8.
9. 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
10. 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.
11.
12.
13. 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.
14.
15. 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?
16. Para
administrar
todo lo que
pasa en el
sistema el SO
construye y
mantiene tablas
de información
de cada
entidad que
esté
administrando.
17. 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.
18. 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
19. 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).
20. 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
21. Para que el SO administre los proceso debe de
conocer:
Ubicación de proceso.
Atributos.
23. 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
24.
25. 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
26. 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.
27. 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.
28.
29. 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.
30. 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.
32. 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
33. 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..
34.
35. 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).
36. condiciones : P1 requiere R1 y R2
P2 requiere R1 y R2
acciones:
1. P1 obtiene R1
2. P2 obtiene R2
3. 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
37. 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
38.
39. 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
40. 1. 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.
41.
42. 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
45. 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.
46. Escriba los estado del modelo de Procesos con
Dos Estados
47. Cada proceso puede tener dos estados:
En ejecución.
No en ejecución.
49. 1. 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.
51. 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.
52. Escriba los estado del modelo de Procesos con
cinco estados
55. 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.
56. Qué información necesita el SO para controlar
los procesos y administrar los recursos?
57. Para administrar todo lo que pasa en el sistema
el SO construye y mantiene tablas de
información de cada entidad que esté
administrando.
58. Escriba nombre de las 4 tablas que crea el SO
para controlar los procesos y administrar los
recursos
59. Tablas de memoria
Tablas de E/S
Tablas de archivos
Tablas de procesos
60. Para que el SO administre los proceso debe de
conocer y .
61. Para que el SO administre los proceso debe de
conocer:
Ubicación de proceso.
Atributos.
62. Mencione por escrito las 5 pasos que debe
hacer un SO cada vez que se crea un proceso.
63. 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.
64. Escriba 3 razones por las que un SO debe
cambiar de proceso.
65. 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.
67. 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.
69. 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 R2
P2 requiere R1 y R2
acciones:
1. P1 obtiene R1
2. P2 obtiene R2
3. 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
70. ¿Cuál es la función de los semáforos en los SO?
71. Si un proceso está esperando para una señal, es
suspendido hasta esa señal se envía