1. SISTEMA OPERATIVO : COLECCIÓN DE PROCESOS E jecutan código del sistema Creación y eliminación de procesos Planificación De Procesos Establecimiento de mecanismos para la sincronización y comunicación de procesos Ing. Orihuela Ordoñez : Sistemas Operativos
4. PROCESO TIEMPO DE CPU MEMORIA ARCHIVOS DISPOSITIVOS E/S Ing. Orihuela Ordoñez Sistemas Operativos
5.
6. Diagrama de estados de un proceso Nuevo Listo En espera En ejecución Terminado Ing. Orihuela Ordoñez Sistemas Operativos Fin de E/S o suceso Espera por E/So suceso salir Despacho del planificador Interrupcion admitido
7. BLOQUE DE CONTROL DE PROCESOS puntero Estado del proceso Numero del proceso Contador del programa Registros Limites de memoria Listas de archivos abiertos Ing. Orihuela Ordoñez Sistemas Operativos Planificacion de CPU Informacion contable Informacion de estado de E/S
8.
9.
10.
11.
12.
13.
14. Ejemplo(cont.) Se incrementa el PC y se lee la instrucción siguiente Ing. Orihuela Ordoñez : Sistemas Operativos . . . . . . 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 300 301 302 940 941 Memoria Registros de la CPU PC AC IR 3 0 1 5 9 4 1 0 0 0 3
15. Ejemplo(cont.) El contenido anterior del acumuladory el contenido dela ubicación 941 se suman y el resultado se almacena en el AC Ing. Orihuela Ordoñez Sistemas Operativos . . . . . . 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 300 301 302 940 941 Memoria Registros de la CPU PC AC IR 3 0 1 1 9 4 0 0003 + 0002 = 0005 0 0 0 5
16. Ejemplo(cont.) Se incrementa el PC y se lee la instrucción siguiente. Ing. Orihuela Ordoñez Sistemas Operativos . . . . . . 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 300 301 302 940 941 Memoria Registros de la CPU PC AC IR 3 0 2 2 9 4 1 0 0 0 5
17. Ejemplo(cont.) El contenido de AC se almacena en la ubicación 941. Son 3 ciclos de instrucción (c/u consta de un ciclo de lectura y otro de ejecucion) Ing. Orihuela Ordoñez Sistemas Operativos . . . . . . 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 5 300 301 302 940 941 Memoria Registros de la CPU PC AC IR 3 0 2 1 9 4 0 0 0 0 5
18. PROCESO P0 SIST. OP. PROCESO P1 en ejecución En ejecución Guardar estado en PCB 0 Recuperar estado de PCB 1 Guardar estado en PCB 1 Recuperar estado de PCB 0 ocioso ocioso En ejecución Interrupción o llamada al sistema ocioso Interrupción o llamada al sistema . . . . . . Ing. Orihuela Ordoñez Sistemas Operativos
19.
20.
21.
22.
23. Colas de planificación Ing. Orihuela Ordoñez Sistemas Operativos Cola de p. listos Cola de E/S Ocurre interrupcion Hijo se ejecuta E/S CPU Esperar una interrupcion Bifurcar un hijo Expiro porcion de tiempo Solicitud de E/S
24. Planificación (cont.) En un proceso por lotes normalmente existen mas proceso de los que se puede ejecutar inmediatamente estos se colocan en spool en un dispositivo de almacenamiento masivo (HD generalmente) ahí esperan hasta que puedan ejecutarse) Planificador a largo plazo : escoge procesos de una reserva y los carga en la memoria para que se ejecuten. Se ejecuta con menor frecuencia, controla el grado de multiprogramación, pueden pasar minutos entre la creación de procesos nuevos en el stm. Planificador a corto plazo : escoge entre los procesos que están listos para ejecutarse, y asigna la CPU a uno de ellos, debe ser muy rápido. Tiempo para tomar la decisión de ejecutar un proceso de 100ms=10ms 10/(100+10)=9% del tiempo de CPU para planificar el trabajo Planificador a mediano plazo : saca los procesos de la memoria a fin de reducir el grado de multiprogramación , posteriormente el proceso se reintroducirá en la memoria y podrá continuar su ejecución donde se quedo(intercambio). Ing. Orihuela Ordoñez Sistemas Operativos
25. Comunicación entre procesos El sistema operativo debe proporcionar mecanismos para la comunicación entre procesos IPC.este permite la comunicación entre procesos y sincronizar sus acciones. Los esquemas de comunicación por memoria compartida y por transferencia de mensajes no son mutuamente exclusivos. Ing. Orihuela Ordoñez : Sistemas Operativos
26. Condiciones de competencia : en una situación en la que dos o mas procesos leen o escriben datos compartidos, y el resultado final depende de quien se ejecuta precisamente cuando Ing. Orihuela Ordoñez Sistemas Operativos abc Prog.c Prog.n 4 5 6 7 Directorio de Spooler . . . PA Lee in PB Lee in out=4 in=7 out : apunta al siguiente archivo por imprimir. in : apunta la siguiente ranura libre del directorio
27. Sección critica : en situaciones en que se comparte memoria, archivos es necesario asegurar que si un proceso están usando una variable o archivo compartido, los demás procesos quedaran excluidos de hacer lo mismo. El segmento del programa donde se accede a la memoria compartida, se denomina región critica o área critica. Esto no es suficiente para lograr una buena solución necesitamos que se cumplan además: - Dos procesos nunca deben estar simultáneamente dentro de su región critica. - No debe hacerse suposiciones acerca de la velocidad de la CPU. - Ningún proceso que se ejecuta fuera de su RC puede bloquear a otros procesos. - Ningún proceso deberá esperar indefinidamente para entrar en su RC. Ing. Orihuela Ordoñez : Sistemas Operativos
28.
29.
30.
31.
32. La cena de los filósofos Ing. Orihuela Ordoñez Sistemas Operativos Sirve para modelar procesos quer compiten por tener acceso exclusivo a un numero limitado de recursos(E/S)