INFORMACIÓN DE UN PROCESO
- Estado del procesador: contenido de los registros del modelo de programación.
- Imagen de memoria: contenido de los segmentos de memoria en los que reside el código y los datos del proceso
- Contenido del bloque de control del proceso (BCP).
INFORMACIÓN DE UN PROCESO II

ESTADO DEL PROCESADOR
- Está formado por el contenido de todos sus registros:
- Registros generales
- Contador de programa
- Puntero de pila
- Registro de estado
- Registros especiales
- Cuando un proceso está ejecutando su estado reside en los registros del computador.
- Cuando un proceso no ejecuta su estado reside en el BCP.
PREPARACIÓN DEL CÓDIGO DE UN PROCESO

TABLAS DEL SISTEMA OPERATIVO
-
Tabla de procesos (tabla de BCP)
-
Tabla de memoria: información sobre el uso de la memoria.
-
Tabla de E/S: guarda información asociada a los periféricos y a las operaciones de E/S
-
Tabla de fichero: información sobre los ficheros abiertos.
Planificación de Procesos
- Objetivos de la Planificación de Procesos:
- Multiprogramación: Tener siempre un proceso en ejecución con el propósito mejorar utilización CPU y otros recursos
- Tiempo Compartido: Cambiar rápidamente la CPU entre procesos para mantener buena interactividad
- No pueden existir más procesos en ejecución que el número de procesadores
- Sistemas de multiprocesamiento permiten tener más de un proceso en ejecución
- Planificador : Selecciona el proceso
- Activador: Da control al proceso (cambio de contexto)
- Planificación
- A largo plazo (añadir procesos a ejecutar)
- A medio plazo (añadir procesos a RAM)
- A corto plazo (qué proceso tiene la UCP)
- Planificación de E/S
· Tipos de planificación
- Sin expulsión: el proceso conserva la UCP mientras desee.
- Con expulsión: el SO quita la UCP al proceso
- Exige un reloj que interrumpe periódicamente
· Colas de procesos
Colas de Planificación
· Existen otras colas en el sistema
· Para la gestión de dispositivos de E/S se implementa una cola para evitar que varios procesos accedan a la vez a un dispositivo. Se añaden a la cola y el proceso debe esperar a que el dispositivo se le asigne.
· Estas colas se conocen como Colas de Dispositivo
Modelo de Colas

Hilos (Threads)
Concepto de Hilo
-
Un hilo es una abstracción de un procesador (Program counter, registros de trabajo y pila de ejecución)
-
Una tarea (o proceso) permite que los hilos compartan:
-
Código, datos y recursos del sistema operativo
-
Un proceso tradicional es una tarea con un solo hilo
-
A los hilos también se les denominan procesos ligeros, en contraposición a procesos pesados en el concepto tradicional
- Los hilos son más eficientes en la creación y en el cambio de contexto.
- Un hilo comparte con sus hilos compañeros:
- Sección de código
- Sección de datos
- Recursos del S.O.
Hilo vs. Proceso
- Ventajas de los hilos respecto de los procesos
- Creación y finalización más rápida
- Los hilos son más eficientes en el cambio de contexto
- Conmutación entre hilos del mismo proceso más fácil
- Mejor comunicación entre hilos de un mismo proceso
- Varios hilos de un mismo proceso pueden ejecutarse en paralelo (paralelismo real si hay más de un procesador)
|