Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Proceso
Tambin se llama tarea. Ejecucin de un programa individual. Traza del proceso:
Listado de la secuencia de instrucciones que se ejecutan para dicho proceso.
Direccin 0 100
5.000
Proceso A
8.000
Proceso B Proceso B
12.000
Proceso C Proceso C
Figura 3.1. Instantnea de un ejemplo de ejecucin (Figura 3.3) en el ciclo de instruccin 13.
5000 = Direccin de comienzo del programa del proceso A 8000 = Direccin de comienzo del programa del proceso B 12000 = Direccin de comienzo del programa del proceso C
Fin de plazo
Fin de plazo
Fin de plazo
100 = Direccin de comienzo del programa distribuidor Las reas sombreadas indican ejecucin del proceso distribuidor; la primera y tercera columna cuentan los ciclos de instruccin; la segunda y cuarta columna muestran la direccin de la instruccin a ejecutar.
No No ejecucin Ejecucin
Salir
Ejecucin
Pausar
Pausa
Creacin de procesos
Emisin de un trabajo por lotes. El nuevo usuario intenta conectarse. Se crea para ofrecer un servicio, como por ejemplo la impresin. Permite que un proceso pueda originar la creacin de otro.
Terminacin de procesos
Un trabajo por lotes debe incluir una instruccin de detencin (Halt). El usuario se desconecta. El usuario puede abandonar una aplicacin. Una serie de errores y condiciones de fallo pueden llevarnos a la terminacin de un proceso.
Por ejemplo: escribir en un archivo que es slo de lectura. El proceso ha esperado ms all del tiempo mximo especificado para que se produzca cierto suceso.
Instruccin privilegiada. Mal uso de los datos. Intervencin del operador o del SO:
Por ejemplo, si se produce un bloqueo.
Terminacin del padre, por lo que terminan los procesos de todos sus descendientes. Solicitud del padre.
Procesos
No Ejecucin:
Listos para ejecutarse.
Bloqueado:
Esperan a que termine una operacin de E/S.
El distribuidor podra no seleccionar exactamente el proceso que est en el extremo ms antiguo de la cola porque podra estar bloqueado.
Expedir Ejecucin Ejecucin Fin del tiempo Ocurre suceso Salir Terminado Terminado
Espera suceso
Bloqueado
Proceso A
Proceso B
Proceso C
Distribuidor
Ejecucin
Listo
Bloqueado
Salir Procesador
Fin de plazo
Cola del suceso 1 Ocurre suceso 1 Cola del suceso 2 Ocurre suceso 2 Esperar suceso 2 Esperar suceso 1
El procesador es ms rpido E/S, Procesos suspendidos que que la los por lo que suele ser habitual todos
procesos de memoria estn esperando por E/S. Intercambiar una parte del proceso o todo el proceso al disco para liberar la memoria principal. Cuando los procesos de la memoria principal estn en el estado Bloqueado, el sistema operativo puede suspender un proceso ponindolo en estado Suspendido. Dos nuevos estados:
Bloqueado y suspendido. Listo y suspendido.
Un estado de suspensin
Nuevo Nuevo
Admitir Expedir
Salir
Listo Listo
Fin de plazo
Ejecucin Ejecucin
Terminado Terminado
Suspender
Suspendido Suspendido
Bloqueado Bloqueado
suceso
Listo/ suspendido
Suspender suceso
Expedir
Listo
Fin de plazo suceso
Ejecucin Ejecucin
Salir
Terminado Terminado
Bloqueado Bloqueado
El sistema operativo necesita liberar suficiente memoria principal para cargar un proceso que est listo para ejecutarse. El sistema operativo puede suspender a un proceso subordinado o de utilidad, o a un proceso que se sospecha que sea el causan te de un problema. Un usuario puede querer suspender la ejecucin de un programa con fines de depuracin o en conexin con el uso
Temporizacin
de un recurso. Un proceso puede ejecutarse peridicamente (por ejemplo, un proceso de contabilidad o de supervisin del sistema) y puede ser suspendido mientras espera el siguiente intervalo de tiempo.
Un proceso padre puede querer suspender la ejecucin de un descendiente para examinar o modificar el proceso suspendido o para coordinar la actividad de varios descendientes.
Memoria
virtual Recursos del computador Procesador E/S E/S E/S Memoria principal
los procesos. La asignacin de memoria secundaria a los procesos. Cualesquiera atributos de proteccin de bloques de memoria principal o virtual, como qu procesos pueden acceder a ciertas regiones compartidas de memoria. Cualquier informacin necesaria para gestionar la memoria virtual.
disponible o estar asignado a un proceso en particular. Estado de la operacin de E/S. Posicin de memoria principal que se est utilizando como origen o destino de la transferencia de E/S.
Tablas de archivos
Ofrecen informacin sobre la existencia de los archivos. Su posicin en la memoria secundaria. Su estado actual. Otros atributos. A veces esta informacin es mantenida por un sistema de gestin de archivos.
Tablas de procesos
Dnde est ubicado el proceso? Atributos del proceso necesarios para su administracin:
ID del proceso. Estado del proceso. Ubicacin en la memoria.
Imagen de proceso
Tablas de E/S
Tablas de archivo
Proceso 1
Proceso n
Proceso n
Figura 3.10. Estructura general de las tablas de control del sistema operativo.
Informacin de control del proceso Bloque de control dey proceso Informacin de planificacin de estado:
sta es la informacin que necesita el sistema operativo para llevar a cabo sus funciones de planificacin. Los elementos tpicos de esta informacin son los siguientes: Estado del proceso: define la disposicin del proceso para ser planificado para ejecutar (en ejecucin, listo, esperando, detenido). Prioridad: se puede usar uno o ms campos para describir la prioridad de planificacin de los procesos. En algunos sistemas se necesitan varios valores (por omisin, actual, la ms alta permitida). Informacin de planificacin: sta depender del algoritmo de planificacin utilizado. Como ejemplos se tienen la cantidad de tiempo que el proceso ha estado esperando y la cantidad de tiempo que el proceso ejecut la ltima vez. Suceso: la identidad del suceso que el proceso est esperando antes de poder reanudarse.
Proceso 1
Proceso 2
Proceso n
Modos de ejecucin
Modo de usuario:
Es el modo menos privilegiado. Los programas de usuarios ejecutan normalmente en ese modo.
proceso. Asignar espacio para el proceso. Iniciar el bloque de control del proceso. Establecer los enlaces apropiados:
Por ejemplo: aadir un proceso nuevo a una lista enlazada que se utiliza como cola de planificacin.
Por ejemplo: mantener un archivo de contabilidad.
incluyendo el contador de programa y otros registros. Actualizar el bloque de control del proceso que est en estado de Ejecucin. Mover el bloque de control del proceso a la cola apropiada (Listos, bloqueados). Seleccionar otro proceso para su ejecucin.
Ejecuta el ncleo del sistema operativo fuera de cualquier proceso. El cdigo del sistema operativo se ejecuta como una entidad separada que opera en modo privilegiado. Software del sistema operativo en el contexto de un proceso de usuario. Un proceso se ejecuta en modo privilegiado cuando se ejecuta el cdigo del sistema operativo.
Identificacin del proceso Informacin de estado del procesador Informacin de control del proceso
Pila de usuario
Espacio privado de direcciones de usuario (programas, datos)
Figura 3.15. Imagen de un proceso: el sistema operativo se ejecuta dentro del proceso de usuario.
El proceso est esperando un suceso y ha sido expulsado al almacenamiento secundario. El proceso retorna del modo del ncleo al modo de usuario, pero el ncleo lo expulsa y realiza un cambio de contexto
Creado Creado Expulsado Expulsado Sin memoria suficiente (slo sistema de intercambio)
Dormir Terminar
Despertar
Despertar
Zombie
Dormido y descargado