Usuario, supervisor, ejecutivo y núcleo
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 6,7 KB
Paginación: La paginación es una técnica de gestión de memoria en la que se divide toda la memoria principal en marcos de página. Todos los marcos de página tienen el mismo tamaño. Los datos con los que se trabaja están agrupados en páginas, cuando se necesita una página se puede cargar en cualquier marco de página que esté disponible.
Procesos: De forma intuitiva podemos considerar que un proceso es un programa en ejecución. Si en un sistema informático se están ejecutando 3 programas diferentes: un navegador, un compilador y un editor, mientras dure su ejecución por cada programa existirá un proceso.
Un sistema operativo multitarea intenta dedicar atención a todos los procesos para que su ejecución avance en paralelo, aunque sea de un modo aparente.
Gestión combinada: Segmentación + Paginación En algunos SO se utiliza una gestión combinada con segmentación y paginación. Se utiliza la segmentación para definir áreas de memoria para los procesos.
1 - Ejecución modo usuario:
El proceso está siendo ejecutado por una CPU. En un momento dado sólo puede haber tantos procesos en ejecución como CPUs físicas tenga la máquina. Además la CPU está funcionando en modo usuario, es decir que está ejecutando código del espacio de usuario. Si el código está mal escrito y se produce un error, la aplicación terminará.
2 - Ejecución modo núcleo:
El proceso está siendo ejecutado por una CPU, y la CPU está funcionando en modo núcleo. Sólo el kernel del SO se ejecuta en modo núcleo. Cuando una CPU funciona en modo núcleo o modo supervisor, permite realizar algunas operaciones que están prohibidas en modo usuario. De esta manera el núcleo del sistema operativo puede controlar todo el sistema informático. Si el código está mal escrito y se produce un error probablemente todo el sistema se detenga.
3 - Listo para ejecutar y en memoria;
Un proceso está listo para ejecutar cuando está disponible para ejecutar en cuanto sea asignado a alguna CPU. Además este proceso está cargado en memoria principal, de manera que puede ser ejecutado en cuanto quede una CPU disponible.
4 - Dormido y en memoria:
Un proceso dormido está esperando que ocurra determinado suceso: le llegue una señal de algún otro proceso, se complete una operación de entrada/salida, transcurra determinado tiempo... Es decir, de momento no precisa la atención de ninguna CPU. Además, el proceso está cargado en memoria principal.
5 - Listo para ejecutar y descargado:
Un proceso que estaba ocurriendo determinado suceso ya está preparado para ejecutarse, pero aún necesita ser cargado en memoria principal antes de que pueda ser planificado en alguna CPU.
6 - Dormido y descargado:
El proceso no necesita la atención de ninguna CPU porque está esperando algún suceso externo, y el planificador del SO ha decidido descargarlo de la memoria principal (a disco) para que la memoria principal liberada pueda agilizar el funcionamiento de otros procesos.
7 - Expulsado:
Básicamente es un proceso que abandona la ejecución en modo núcleo antes de ser planificado para la ejecución en modo usuario. A efectos de planificación aquellos procesos que están en expulsado y los que están en listo para ejecutar y en memoria forman una sola cola.
8 - Creado:
Un nuevo proceso puede pasar al estado de listo para ejecutar y en memoria o bien al de listo para ejecutar y descargado en función de la memoria disponible.
9 - Zombie:
Cuando un proceso termina, el SO libera todos los recursos que tenía asociados excepto la estructura de control que guarda los datos del proceso esperando a que el proceso padre la recoja. Si un proceso termina y el proceso padre no recoge estos datos, el proceso que ha terminado se queda en el estado zombie. En un sistema que funciona correctamente no debería haber procesos en este estado durante un tiempo prolongado.