240 likes | 497 Views
MODELO DE ESTADOS. Modelo de procesos de dos estados Ejecución No Ejecución S.O. Mantener información de proceso Estado actual Posición memoria. MODELO DE ESTADOS. MODELO DE ESTADOS. Modelo de procesos de cinco estados Listo Nuevo No ejecución + Bloqueado Terminado
E N D
MODELO DE ESTADOS • Modelo de procesos de dos estados • Ejecución • No Ejecución • S.O. • Mantener información de proceso • Estado actual • Posición memoria
MODELO DE ESTADOS Modelo de procesos de cinco estados Listo Nuevo No ejecución + Bloqueado Terminado Ejecución Actualmente en ejecución Listo Preparado para ejecutarse Bloqueado No puede ejecutarse hasta ocurra suceso Nuevo Acaba de crearse Terminado Excluido por el S.O.
MODELO DE ESTADOS Transiciones: Nulo Nuevo Nuevo proceso para ejecutar programa Nuevo Listo Cuando S.O. Está preparado para aceptar un proceso más. Listo Ejecución Selección nuevo proceso para ejecutar S.O. Ejecución Terminado Proceso que se esta ejecutando finalizado por S.O. (terminó o abandona) Ejecución Listo Comúnmente alcanzó tiempo máximo permitido ejecución ininterrumpida Ejeución Bloqueado Solicita algo por lo que debe esperar Bloqueado Listo Cuando se produce suceso que estaba esperando
MODELO DE ESTADOS PROCESOS SUSPENDIDOS Listo En memoria principal y listo para ejecución Bloqueado En memoria principal esperando suceso Bloqueado y suspendido En memoria secundaria esperando suceso Listo y suspendido En memoria secundaria disponible para ejecución al cargar a memoria principal
MODELO DE ESTADOS TRANSICIONES Bloqueado Bloqueado y suspendido: Proceso bloqueado se expulsa dar cabida otro proceso no bloqueado Bloqueado y suspendido Listo y suspendido: Cuando se produce suceso esperado Listo y suspendido Listo: Cuando no hay procesos listos en memoria principal Listo Listo y suspendido:Cuando proceso bloqueado es mas alta prioridad o para liberar bloque memoria Nuevo Listo y suspendido,Nuevo Listo: Al crear proceso puede agregarse a una u otra cola Bloqueado y suspendido Bloqueado: Proceso bloqueado y suspendido de mayor prioridad que Listo Ejecución Listo y suspendido: Al finalizar tiempo, para liberar espacio de memoria para traer proceso bloqueado y suspendido de mayor prioridad que se acaba de liberar Varios Terminado: Termina porque se completo, ocurrió un error, finalizado por proceso que lo creo, finaliza cuando padre termina.
MODELO DE ESTADOS Características de proceso suspendido : Proceso no disponible de inmediato para ejecución Puede o no estar esperando suceso, condición de bloqueado independiente de condición de suspensión Proceso suspendido por agente (el mismo, SO, padre) para impedir su ejecución No puede dejar este estado hasta que agente ordene explícitamente.
DESCRIPCION DE PROCESOS Planifica y expide procesos Asigna recursos a procesos Responde solicitudes servicios básicos Administra uso de recursos por procesos SISTEMA OPERATIVO
ESTRUCTURAS DE CONTROL SO • TABLAS DE MEMORIA: seguir pista memoria principal y secundaria • Asignación memoria principal a procesos • Asignación memoria secundaria procesos • Atributos protección de bloques memoria principal o virtual • Información necesaria para gestionar memoria virtual • TABLAS E/S: administrar dispositivos y canales E/S • TABLA DE ARCHIVOS: Información sobre existencia archivos,posición memoria, estado actual, otros atributos. • TABLA DE PROCESOS: Información sobre procesos para administrarlos
IMAGEN DE PROCESO Parte modificable espacio usuario: Datos programa Zona para pila usuario programas que pueden modificarse Datos de Usuario Programa de Usuario Programa a ejecutar Pila LIFO asociada a proceso Almacena parametros, y direcciones retorno en llamadas sistema y procedimientos Pila del sistema Bloque de Control del Proceso Información para SO controle proceso
ESTRUCTURAS DE CONTROL DE PROCESOS Ubicación de procesos: Depende de esquema gestión de memoria Las tablas de procesos deben mostrar ubicación de c/segmento o página de c/imagen de proceso Atributos de procesos: Identificación de proceso: identificador numérico único de proceso identificador de usuario Información del estado del procesador: contenido de registros del procesador Información de control del proceso: información adicional para SO coordine diferentes procesos activos
MODOS DE EJECUCION MODO DE USUARIO Menos privilegiado MODO DE SISTEMA Protegar SO y tablas de control Control completo: procesador e instrucciones, registros y memoria
CREACION DE PROCESOS Asignar único identificador al nuevo proceso:Añade entrada a tabla de procesos Asignar espacio para el proceso: Todos elementos de imagen del proceso, Iniciar el bloque de control del proceso:ID del proceso, Información estado procesador: entradas a 0 excepto contador programa y punteros de pila de sistema; información de control procesador inicia desde valores estándares por omisión al valor mas bajo. Establecer los enlaces apropiados: Proceso nuevo cola Listos o de Listos y Suspendidos Crear o ampliar otras estructuras de datos: Información para evaluación rendimiento.
CAMBIO DE PROCESO Cuando cambiar de proceso MECANISMO CAUSA USO Interrupcion Externa a la ejecución de la instrucción Reacción a suceso asíncrono en curso externo Cepo Asociada con ejecución de instrucción Tratamiento e error o condición en curso excepcional Llamada del Solicitud explícita Llamada a función del SO supervisor
CAMBIO DE PROCESO • Cambio de modo • Interrupción pendiente • Guarda contexto programa que está ejecutándose • Asigna al contador de programa valor de dirección comienzo programa tratamiento interrupción • Cambia de modo USUARIOa modo de NUCLEO para que código procesa interrupción pueda incluir instrucciones privilegiadas
CAMBIO DE PROCESO • Cambio de estado de los procesos • Guarda contexto del procesador: contador programa y otros registros • Actualizar bloque de control del proceso que estaba en estado de ejecución • Mover bloque control de proceso a cola apropiada • Seleccionar otro proceso para ejecución • Actualizar bloque control proceso seleccionado: incluye cambiar estado a ejecución • Actualizar estructuras datos gestión memoria • Restaurar contexto del procesador al que existía en momento en que proceso seleccionado dejo ultima vez estado ejecución