Uno de los módulos más
importantes de un sistema operativo es la de administrar los procesos y tareas
del sistema de cómputo. En esta sección se revisarán dos temas que componen o
conciernen a este módulo: la planificación del procesador y los problemas de
concurrencia.
Planificación del procesador
La planificación del
procesador se refiere a la manera o técnicas que se usan para decidir cuánto
tiempo de ejecución y cuando se le asignan a cada proceso del sistema.
Obviamente, si el sistema es monousuario y monotarea no hay mucho que decidir,
pero en el resto de los sistemas esto es crucial para el buen funcionamiento
del sistema.
Niveles de planificación
En los sistemas de
planificación generalmente se identifican tres niveles: el alto, el medio y el
bajo. El nivel alto decide que trabajos (conjunto de procesos) son candidatos a
convertirse en procesos compitiendo por los recursos del sistema; el nivel
intermedio decide que procesos se suspenden o reanudan para lograr ciertas
metas de rendimiento mientras que el planificador de bajo nivel es el que
decide que proceso, de los que ya están listos (y que en algún momento paso por
los otros dos planificadores) es al que le toca ahora estar ejecutándose en la
unidad central de procesamiento. En este trabajo se revisaran principalmente
los planificadores de bajo nivel porque son los que finalmente eligen al
proceso en ejecución.
2.5. Gestión de memoria
El gestor de memoria es uno de
los componentes principales del sistema operativo. Su actividad se centra fundamentalmente
en la categoría de gestión de recursos, puesto que tiene por objetivo casi
exclusivo la gestión del recurso memoria, en este sentido se encarga de:
- Asignar memoria a los procesos para crear su imagen de memoria.
- Proporcionar memoria a los procesos cuando la soliciten y liberarla
cuando así lo requieran.
- Tratar los posibles errores de acceso a memoria, evitando que unos
procesos interfieran en la memoria de otros.
- Permitir que los procesos puedan compartir memoria entre ellos. De
esta forma los procesos podrán comunicarse entre ellos.
- Gestionar la jerarquía de memoria y tratar los fallos de página en
los sistemas con memoria virtual.
Servicios
El gestor de memoria ofrece
una serie de servicios a los procesos. Estos son:
- Solicitar memoria
- Liberar memoria
- Compartir memoria.
2.6. Comunicación y
sincronización entre procesos
Los procesos son entes
independientes y aislados, puesto que, por razones de seguridad, no deben
interferir unos con otros. Sin embargo, cuando se divide un trabajo complejo en
varios procesos que cooperan entre sí para realizar ese trabajo, es necesario
que se comuniquen para transmitirse datos y ordenes y se sincronicen en la
ejecución de sus acciones. Por tanto, el sistema operativo debe incluir
servicios de comunicación y sincronización entre procesos que, sin romper los
esquemas de seguridad, han de permitir la cooperación entre ellos.
Servicios de comunicación y
sincronización.
Como se ha visto
anteriormente, existen distintos mecanismos de comunicación y sincronización,
cada uno de los cuales se puede utilizar a través de un conjunto de servicios
propios. Estos mecanismos son entidades vivas, cuya vida presenta las
siguientes fases:
- Creación del mecanismo.
- Utilización del mecanismo.
- Destrucción del mecanismo.
De acuerdo con esto, los
servicios básicos de comunicación, que incluyen todos los mecanismos, son los
siguientes:
- Crear. Permite que el proceso solicite la creación del mecanismo.
- Enviar o escribir. Permite que el proceso emisor envíe información
a otro.
- Recibir o leer. Permite que el proceso receptor reciba información
de otro.
- Destruir. Permite que el proceso solicite la creación o destrucción
del mecanismo.
No hay comentarios:
Publicar un comentario