Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Control y descripción de procesos (página 2)




Enviado por Pablo Turmero



Partes: 1, 2

Monografias.com

9
Ejemplo de ejecución

Monografias.com

10
Traza de un Proceso

Monografias.com

11

Monografias.com

12
Modelo de procesos con dos estados
un proceso puede estar en uno de estos dos estados
Ejecución (Running)
No-Ejecución (Not-running)

Monografias.com

13
Cola de procesos en No ejecución
La cola es una lista FIFO, (First-in, First-Out)
Cada bloque de la cola representa a un proceso
El comportamiento del despachador se puede describir en términos de un diagrama
de colas
El procesador opera según un turno rotatorio (round-robin)

Monografias.com

14
Creación de un proceso
en un entorno de trabajo por lotes, un proceso se crea como respuesta a la remisión de un trabajo.
En un entorno interactivo, se crea un proceso cuando un nuevo usuario intenta conectarse
el sistema operativo crea un proceso para dar servicio a una aplicación sin que el usuario tenga que esperar, ej. imprimir
un proceso puede originar la creación de otro proceso (process spawning), ej. servidor de archivos puede crear un nuevo proceso por cada solicitud que reciba

Monografias.com

15
Terminación normal El proceso ejecuta una llamada a un servicio del SO
que indica que ha terminado de ejecutar

Tiempo limite excedido El proceso se ha ejecutado mas que el limite de total especificado. Hay varias posibilidades para la clase de tiempo que se mide. Entre éstas se incluyen el tiempo total transcurrido (“tiempo de reloj”), el tiempo que se ha estado ejecutando y, en el caso de un proceso interactivo, el tiempo transcurrido desde que el usuario real realizó su última entrada de datos

No hay memoria disponible El proceso necesita más memoria de la que el sistema le puede proporcionar

Violación de limites El proceso trata de acceder a una posición de memoria a la que no le está permitido acceder

Error de protección El proceso intenta utilizar un recurso o un archivo que no le está permitido utilizar, o trata de utilizarlo de forma incorrecta, como escribir en un archivo que es solo de lectura.

Error Aritmético El proceso intenta hacer un cálculo prohibido, como una división por cero, o trata de almacenar un número mayor del que el hardware acepta.
Terminación de un proceso

Monografias.com

16
Terminación de un proceso
Tiempo máx de espera rebasado El proceso ha esperado más allá del tiempo máximo especificado para que se produzca cierto suceso.

Fallo de E/S Se produce un error en la entrada o la salida, tal como la incapacidad de encontrar un archivo, un fallo de r/w después de un número máximo de intentos (cuando, por ejemplo, hay un región defectuosa en una cinta), o una operación ilegal (como intentar leer de una impresora)
Instrucción inválida El proceso intenta ejecutar una instrucción inexistente (a menudo como resultado de un salto a una zona de datos para intentar ejecutar los datos).

Instrucción privilegiada El proceso intenta usar una instrucción reservada para el sistema operativo

Mal uso de los datos Un elemento de dato es de un tipo equivocado o no está inicializado.

Intervención del oper o del SO Por alguna razón el operador o el sistema operativo termina con el proceso (por ejemplo, si existe un interbloqueo).

Terminación del padre Cuando un proceso padre finaliza, el sistema operativo puede diseñarse para terminar automáticamente con todos sus descendientes

Solicitud del padre Un proceso padre tiene normalmente la autoridad de terminar con cualquiera de sus descendientes

Monografias.com

17
Limitaciones del modelo
No-Ejecución
Listos para ejecutar
Bloqueados
Esperando que termine una operación I/O
El despachador podría no seleccionar el proceso que está en el extremo más antiguo de la cola, porque este podría estar bloqueado
El despachador tendría que recorrer la lista buscando el proceso que este no bloqueado

Monografias.com

18
Modelo de cinco estados
Ejecución (Running)
Listo (Ready)
Bloqueado (Blocked)
Nuevo (New)
Terminado (Exit)

Monografias.com

19
Modelo de cinco estados

Monografias.com

20
Process States

Monografias.com

21
Utilización de dos colas
Cuando se produce un suceso, el so debe recorrer toda la cola
de Bloqueados buscando aquellos procesos que esperan al suceso

Monografias.com

22
Multiples colas de Bloqueados

Monografias.com

23
Procesos suspendidos
El procesador es tan rápido comparado con la I/O que todos los procesos en memoria podrían estar bloqueados
El intercambio (Swap) de estos procesos a disco podría liberar memoria para otro proceso o para crear uno nuevo
El estado bloqueado se transforma a suspendido cuando el proceso está en disco

Monografias.com

24
Un estado suspendido

Monografias.com

25
Un estado suspendido
Todos los procesos que fueron suspendidos estaban en el estado Bloqueado
Son necesarios dos estados nuevos:
• Bloqueado y suspendido: El proceso está en disco esperando un suceso.
• Listo y suspendido: El proceso está en disco pero está disponible para
su ejecución tan pronto como se cargue en la memoria principal.

Monografias.com

26
Two Suspend States

Monografias.com

27
Razones para suspender un proceso
Intercambio El sistema operativo necesita liberar suficiente memoria principal para cargar un proceso que está listo para ejecutarse

Otra razón del SO El sistema operativo puede suspender un proceso de fondo, de utilidad o cualquier proceso que se sospecha sea el causante de un problema

Solicitud de un usuario Un usuario puede querer suspender la ejecución de un programa con fines de depuración o en conexión con el uso de un recurso

Por tiempo Un proceso puede ejecutarse periódicamente (por ejemplo, un proceso de contabilidad o de supervisión del sistema) y puede ser suspendido mientras espera el siguiente intervalo de tiempo

Solicitud del proceso padre Un proceso padre puede querer suspender a ejecución de un proceso padre descendiente para examinar o modificar el proceso suspendido o para coordinar la actividad de varios descendientes

Monografias.com

28
Procesos y Recursos
P1 está ejecutándose; una parte del proceso está en memoria principal; tiene el control de dos dispositivos de E/S
P2 también está en memoria principal, pero está bloqueado esperando al dispositivo de E/S que está asignado a P1
El proceso Pn ha sido descargado a disco y por tanto, está suspendido

Monografias.com

29
Estructuras de Control del SO
Información sobre el estado actual de cada proceso y de cada recurso
El SO construye y mantiene tablas de información sobre cada entidad que esté administrando
Tablas: de memoria, de E/S, de archivos y de procesos

Monografias.com

30
Tablas de Memoria
La asignación de memoria principal a los procesos
La asignación de memoria secundaria a los procesos
Atributos de protección de segmentos de memoria principal o virtual tales como qué procesos pueden acceder a ciertas regiones compartidas de memoria
Información necesaria para gestionar la memoria virtual

Monografias.com

31
Tablas de E/S
E/S puede estar disponible o estar asignado a un proceso
Estado de una operación de E/S en curso
La posición de memoria principal que se está utilizando como origen o destino de una transferencia de E/S

Monografias.com

32
Tablas de Archivos
Existencia de los archivos
Su posición en la memoria secundaria
Su estado actual
Otros atributos
Utilizada por un sistema de gestión de archivos

Monografias.com

33
Tabla de Procesos
Dónde está ubicado el proceso
Atributos del proceso
Programa
Datos
Stack

Monografias.com

34
Imágen del Proceso
Elementos Típicos de una Imagen de Proceso

Datos de Usuario
La parte modificable del espacio de usuario. Puede guardar datos del programa, una zona para una pila del usuario y programas que pueden modificarse.
Programa de Usuario
El programa a ejecutar.
Pila del Sistema
Cada proceso tiene una o más pilas asociadas a él. Una pila se utiliza para almacenar los parámetros y las direcciones de retorno.
Bloque de Control de Proceso
Información necesaria para que el sistema operativo controle al proceso

Monografias.com

35

Monografias.com

36
Bloque de Control de Procesos
Identificación del Proceso
Identificadores
Los identificadores numéricos que se pueden guardar en el bloque de control de proceso incluyen:
Identificador de este proceso
Identificador del proceso que creó a este proceso (el proceso padre)
Identificador del usuario

Monografias.com

37
Bloque de Control de Procesos
Información de Estado del Procesador
Registros Visibles para el Usuario
Un registro visible para el usuario es aquél al que puede hacerse referencia por medio del lenguaje máquina que ejecuta el procesador. Normalmente, existen de 8 a 32 de estos registros, aunque algunas implementaciones RISC tienen más de 100.

Monografias.com

38
Bloque de Control de Procesos
Información de Estado del Procesador
Registros de Control y de Estado
Hay varios registros del procesador que se emplean para controlar su funcionamiento. Entre estos se incluyen:
Program counter: Contiene la dirección de la próxima instrucción a ser tratada
Códigos de condición: Muestran el resultado de la operación aritmética o lógica más reciente (signo, cero, acarreo, igualdad, desbordamiento).
Información de estado: incluye los indicadores de habilitación o inhabilitación de interrupciones y el modo de ejecución

Monografias.com

39
Bloque de Control de Procesos
Información de Estado del Procesador
Stack Pointers
Cada proceso tiene una o más pilas LIFO del sistema asociadas. Las pilas se utilizan para almacenar los parámetros y las direcciones de retorno de los procedimientos y de las llamadas al sistema. El puntero de pila siempre apunta a la cima de la pila.

Monografias.com

40
Bloque de Control de Procesos
Información de Control del Proceso
Información de Planificación y de Estado
Esta es la información que se necesita por el sistema operativo para llevar a cabo sus funciones de planificación. Los elementos típicos de esta información son los siguientes:
Estado del proceso: Define la disposición del proceso para ser planificado para ejecutar (en ejecución, listo, esperando, detenido).
Prioridad: Se puede usar uno o más campos para describir la prioridad de planificación de los procesos. En algunos sistemas se necesitan varios valores (por omisión, actual, la más alta permitida).
Información de planificación: Esta dependerá del algoritmo de planificación 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.

Monografias.com

41
Bloque de Control de Procesos
Información de Control del Proceso
Estructuración de Datos
Un proceso puede estar enlazado con otros procesos en una cola o alguna otra estructura. Por ejemplo todos los procesos que están en estado de espera de un nivel determinado de prioridad pueden estar enlazados en una cola. Un proceso puede mostrar una relación padre-hijo con otro proceso. El BCP puede contener punteros a otros procesos para dar soporte a estas estructuras.

Monografias.com

42
Bloque de Control de Procesos
Información de Control del Proceso
Comunicación entre Procesos
Puede haber varios indicadores, señales y mensajes asociados con la comunicación entre dos procesos independientes. Una parte de esta información o toda ella se puede guardar en el bloque de control de proceso.
Privilegios de los procesos
A los procesos se es otorgan privilegios en términos de la memoria a la que pueden acceder y el tipo de instrucciones que pueden ejecutar. Además, también se pueden aplicar privilegios al uso de los servicios y utilidades del sistema.

Monografias.com

43
Bloque de Control de Procesos
Información de Control del Proceso
Gestión de Memoria
Esta sección puede incluir punteros a las tablas de páginas y/o segmentos que describen la memoria virtual asignada al proceso.
Propiedad de los Recursos y Utilización
Se pueden indicar los recursos controlados por el proceso, tales como los archivos abiertos. También se puede incluir un histórico de la utilización del procesador o de otros recursos; esta información puede ser necesaria para el planificador

Monografias.com

44
Control de Procesos
Modos de ejecución
Modo de usuario
modo menos privilegiado
los programas de usuario ejecutan normalmente en ese modo
Modo de sistema, control, o kernel
modo más privilegiado
Kernel del sistema operativo

Monografias.com

45
Creación de Procesos
Asigna un único identificador al nuevo proceso
Asignar espacio para el proceso (imagen)
Inicializar el bloque de control del proceso
Establecer los enlaces apropiados
Por ejemplo, si el sistema operativo mantiene cada cola de planificación como una lista enlazada, entonces el proceso nuevo se debe poner en la cola de Listos o de Listos y suspendidos
Crear o ampliar otras estructuras de datos
Ej: el sistema operativo puede mantener un archivo de contabilidad

Monografias.com

46
Cambio de Proceso
Cuándo cambiar de proceso:

Interrupción de reloj:
Si el SO determina que el proceso que está en ejecución, se ha estado ejecutando durante la fracción máxima de tiempo permitida, el proceso debe pasar al estado Listo y se debe expedir otro proceso

Interrupción de E/S:
Si la acción constituye un suceso que están esperando uno o más procesos, entonces el SO traslada todos los procesos bloqueados correspondientes al estado Listo o Listo suspendido

Fallo de memoria:
una referencia a una dirección de memoria virtual no está en memoria principal. El SO puede llevar a cabo un cambio de contexto para reanudar la ejecución de otro proceso; el proceso que cometió el fallo de memoria se pasa a estado Bloqueado.

Monografias.com

47
Cambio de Proceso
Trap
Error o excepción
Si es fatal puede causar que el proceso pase al estado terminado
Llamada al sistema
Ej: abrir un archivo. El proceso de usuario pasa al estado suspendido

Monografias.com

48
Cambio de Estado de los Procesos
Salvar el contexto del procesador, incluyendo el contador de programa y otros registros
Actualizar el bloque de control del proceso que estaba en estado de Ejecución
Mover el bloque de control del proceso a la cola apropiada Listos, Bloqueados, Listos y suspendidos
Seleccionar otro proceso para ejecución

Monografias.com

49
Cambio de Estado de los Procesos
Actualizar el bloque de control del proceso seleccionado
Actualizar las estructuras de datos de gestión de memoria
Restaurar el contexto del procesador a aquel que existía en el momento en el que el proceso seleccionado dejó por última vez el estado de Ejecución

Monografias.com

50
Funciones Básicas del Núcleo de un Sistema Operativo
Gestión de Procesos
• Creación y terminación de los procesos
• Planificación y expedición de los procesos
• Cambio de procesos
• Sincronización de procesos y soporte para la comunicación entre procesos
• Gestión de los bloques de control de procesos
Gestión de memoria
• Asignación de espacios de direcciones a los procesos
• Intercambio
• Gestión de páginas y segmentos
Gestión de E/S
• Gestión de buffers
• Asignación de canales de E/S y dispositivos a los procesos
Funciones de Soporte
• Tratamiento de interrupciones
• Contabilidad
• Supervisión

Monografias.com

51
Ejecución del sistema operativo
Núcleo fuera de todo proceso
Ejecución del núcleo fuera de cualquier proceso
El código del sistema operativo se ejecuta como una entidad separada que opera en modo privilegiado
Ejecución dentro de los procesos de usuario
SO en el contexto de un proceso de usuario (colección de rutinas que el usuario llama para llevar a cabo varias funciones y que son ejecutadas dentro del entorno del proceso de usuario)
El proceso se ejecuta en modo privilegiado cuando ejecuta código del SO

Monografias.com

52

Monografias.com

53

Monografias.com

54
Ejecución del sistema operativo
Sistema operativo basado en procesos
implementación del sistema operativo como una colección de procesos del sistema
útil en un entorno de multiprocesador o de varias computadoras

Monografias.com

55
UNIX SVR4 Process Management
Todos los procesos del sistema, son creados por órdenes de programas del usuario excepto el proceso 0 (proceso de intercambio) y 1(Init).

Monografias.com

56
UNIX Process States

Monografias.com

57
UNIX Process Image

Monografias.com

58

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter