Gestión de los recursos de un sistema operativo.
TEMA 3: GESTIÓN DE LOS RECURSOS DE UN SISTEMA OPERATIVO
PROCESOS Y FLUJOS
- Proceso:
- Programa en ejecución.
- Características de un proceso en un SO:
- Ha de residir completamente en memoria
- Cada proceso esta protegido
- Cada proceso tendrá una estructura de datos
- Los procesos pueden comunicarse, sincronizarse y colaborar entre sí.
- El SO, gracias a la CPU, se encarga de asignar los recursos que los procesos necesitan en un orden adecuado y atendiendo a unas prioridades.
- EL SO, también realiza funciones de sincronización de los procesos para que se ejecuten en el orden adecuado.
- Cada proceso tiene una estructura de datos, que es única para cada proceso, e identifica el proceso respecto a los demás y sirve para controlar su correcta ejecución. Esta estructura se conoce como bloque de control de proceso (BCP).
HEBRAS Y ESTADOS DE LOS PROCESOS
- Una hebra es un subproceso de un proceso que consume recursos propios pero que depende del proceso padre que lo ha ejecutado.
- Una hebra es un punto de ejecución de un proceso
- Mejoran el rendimiento y eficacia de los sistemas operativos.
- Un proceso puede encontrarse en tres estados diferentes:
- Bloqueado:Está esperando a que ocurra un evento y no puede seguir ejecutándose hasta que termine el evento. Una situación típica de proceso bloqueado se produce cuando el proceso solicita una operación E/S (Entrada / Salida). En este estado el proceso reside en BCP.
- Listo:Está listo para ejecutar cuando puede entrar en fase de procesamiento. Dado que puede haber varios procesos en este estado, una de las tareas del sistema operativo será seleccionar aquel que debe pasar a ejecución. El módulo del SO que toma esta decisión se denomina planificador. En este estado el proceso reside en BCP
TRANSICIÓN DE PROCESOS
- Se denominan transiciones a los cambios de estado en los que se puede encontrar un proceso.
- En un sistema multiproceso, cuando un proceso o hilo pasa de un estado a otro, lo que se estará produciendo es un cambio de contexto.
- El cambio de contexto puede ser parcial si se realiza entre hilos del mismo proceso.
- Si el cambio se produce entre hilos de diferentes procesos se producirá un cambio de contexto completo
- Los diferentes estados tienen una relación directa con lo que vamos a denominar prioridades, que son aquellas que el administrador del sistema asigna a cada proceso.
- La prioridad de un proceso determina la cantidad de ciclos de CPU que consumirá respecto a otros procesos en ejecución.
- Cada proceso atraviesa varias fases. Cuando se están ejecutando varias tareas a la vez (procesos), es necesario dividir el tiempo de trabajo de la CPU. El tiempo compartido consiste en dividir el tiempo de ejecución del procesador en minúsculos intervalos de tiempo (quantum) e ir asignando cada uno de esos intervalos de ejecución a cada proceso que está en ejecución.
BLOQUE DE CONTROL DE PROCESO.
- Estructura de datos con toda la información que necesita el SO para la gestión de los procesos.
- El BCP almacena información como:
- Estado actual del procesador → ejecución, preparado o bloqueado
- Identificador del proceso → a cada proceso se le asigna un PID
- Prioridad del proceso → La asignada por el procesador
- Ubicación en memoria → Dirección de memoria en el que se carga el proceso
- Recursos utilizados → Recursos hardware y software para poder ejecutarse
ALGORITMOS DE PLANIFICACIÓN
ALGORITMO FCFS (First Come First Serve)
- Los ciclos de CPU vinculados a cada proceso se asignan en función de una cola FIFO
- Al primer proceso que llega se le asignan tiempo hasta que termine y después se ejecuta el siguiente proceso.
- Asigna rotativamente tiempo de ejecución a los diferente procesos.
- En él la asignación de tiempos de ejecución a los procesos es la misma y de forma secuencial. A cada uno se le asigna el mismo quantum o intervalo de tiempo de ejecución.
ALGORITMO STR (Short Time Remainder)
- Este algoritmo permite asignar el tiempo de ejecución de forma prioritaria a los procesos más cortos con el fin de ejecutarlos en el menor tiempo posible.
- Si se está ejecutando un proceso y llega otro, independientemente de la duración que tenga el nuevo, interrumpirá el que esté en ejecución y el siguiente en consumir ciclos de la CPU será el más corto de los que esperan en la cola.
- Variedad del STR donde la asignación de ciclos de CPU va en función del proceso que tenga menos ciclos pendiente de terminar.
MEMORIA RAM Y MEMORIA VIRTUAL
- Memoria virtual:Técnica para hacer que en memoria permanezca solo la parte del programa que se está ejecutando y el reto quede en el disco.
- Es un concepto aplicado ampliamente hoy en día; para el usuario, el programa estará cargado en RAM, pero en realidad solo se cargará en RAM la parte del programa que se esté ejecutando en ese instante. El resto del programa en ejecución permanecerá temporalmente almacenado en disco para su posterior utilización.
PAGINACIÓN, SEGMENTACIÓN Y SWAPPING
PAGINACIÓN
- El espacio de direcciones lógico de un proceso puede ser no contiguo.
- Se divide la memoria en bloques llamados Frames.
- En la paginación, la RAM se divide en zonas que tienen que ser del mismo tamaño, independientemente del tamaño de los procesos que se vayan a ejecutar.
Ventajas:
- No es necesario que las páginas estén contiguas en memoria.
- Es facil de controlar todas la páginas.
- Es posible comenzar a cargar un programa cargando solo una parte del mismo en memoria.
Desventajas:
- Es muy costoso el hardware.
- se consume muchos mas recursos de memoria.
- Hay fragmentación interna.
SEGMENTACIÓN
- Técnica similar a la paginación que permite definir los bloques de memoria de tamaño variable.
- La diferencia entre paginación y segmentación es que las páginas son de tamaño fijo y los segmentos no.
- El uso de la técnica dependerá del sistema operativo.
SWAPPING
- Es un mecanismo o modo de interrelacionar la memoria principal con la secundaria, de tal modo que se produce un intercambio de programas entre ambas cuyo resultado es la simulación de un sistema multitarea o la potenciación de memoria central a base de recursos de la memoria secundaria.








Comentarios
Publicar un comentario