NUCLEO
Todas las operaciones en las que
participan procesos son controladas por la parte del sistema operativo
denominada núcleo (nucleus, Core o kernel, en inglés). El núcleo normalmente
representa sólo una pequeña parte de lo que por lo general se piensa que es
todo el sistema operativo, pero es tal vez el código que más se utiliza. Por
esta razón, el núcleo reside por lo regular en la memoria principal, mientras
que otras partes del sistema operativo son cargadas en la memoria principal
sólo cuando se necesitan.
Los núcleos se diseñan para realizar "el mínimo" posible de
procesamiento en cada interrupción y dejar que el resto lo realice el proceso
apropiado del sistema, que puede operar mientras el núcleo se habilita para
atender otras interrupciones.
Cada sistema operativo tiene un tipo
distinto de kernel: así los Unix más tradicionales como FreeBSD usan un kernel
" monolítico" en el que está todo compilado dentro, otros usan los
llamados "microkernels" como el Darwin, Hurd e incluso Windows
(krnl32.dll). GNU/Linux usa un kernel "modular" (vmlinuz); un núcleo
bastante grande comparado con un microkernel, pero que es capaz de delegar
funciones en los llamados " módulos" , partes independientes del
núcleo que pueden ser incorporadas dinámicamente si hacen falta y luego
descargadas si molestan.
El núcleo de un sistema operativo
normalmente contiene el código necesario para realizar las siguientes
funciones:
1.
Manejo
de interrupciones.
2.
Creación
y destrucción de procesos.
3.
Cambio
de estado de los procesos.
4.
Despacho.
5.
Suspensión
y reanudación de procesos.
6.
Sincronización
de procesos.
7.
Comunicación
entre procesos.
8.
Manipulación
de los bloques de control de procesos.
9.
Apoyo
para las actividades de entrada/salida.
10. Apoyo para asignación y liberación de
memoria.
El Kernel consiste en la parte principal
del código del sistema operativo, el cual se encargan de controlar y
administrar los servicios y peticiones de recursos y de hardware con respecto a
uno o varios procesos, este se divide en 5 capas:
Nivel 1. Gestión de Memoria: que
proporciona las facilidades de bajo nivel para la gestión de memoria secundaria
necesaria para la ejecución de procesos.
Nivel 2. Procesador: Se encarga de
activar los cuantums de tiempo para cada uno de los procesos, creando
interrupciones de hardware cuando no son respetadas.
Nivel 3. Entrada/Salida:
Proporciona las facilidades para poder utilizar los dispositivos de E/S
requeridos por procesos.
Nivel 4. Información o Aplicación o
Interprete de Lenguajes: Facilita la comunicación con los lenguajes y el
sistema operativo para aceptar las ordenes en cada una de las aplicaciones.
Cuando se solicitan ejecutando un programa el software de este nivel crea el
ambiente de trabajo e invoca a los procesos correspondientes.
Nivel 5. Control de Archivos:
Proporciona la facilidad para el almacenamiento a largo plazo y manipulación de
archivos con nombre, va asignando espacio y acceso de datos en memoria
HI,
ResponderBorrar