
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.
- Manejo de interrupciones.
- Creación y destrucción de procesos.
- Cambio de estado de los procesos.
- Despacho.
- Suspensión y reanudación de procesos.
- Sincronización de procesos.
- Comunicación entre procesos.
- Manipulación de los bloques de control de
procesos.
- Apoyo para las actividades de entrada/salida.
- Apoyo para asignación y liberación de memoria.
- Apoyo para el sistema de archivos.
- Apoyo para el mecanismo de llamada y retorno
de un procedimiento.
- Apoyo para ciertas funciones de contabilidad
del sistema.
- Núcleo o Kernel y niveles de un Sistema Operativo.
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.
El Kernel consiste en la parte
principal del codigo 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, en otras palabras, el kernel es el corazon del sistema operativo.
Cada sistema operativo tiene un tipo
distinto de kernel: asi los Unix mas tradicionales como FreeBSD usan un kernel
" monolitico" en el que esta 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 nucleo
bastante grande comparado con un microkernel, pero que es capaz de delegar
funciones en los llamados " modulos" , partes independientes del
nucleo que pueden ser incorporadas dinamicamente si hacen falta y luego
descargadas si molestan. Asi se pueden cargar "drivers" para
hardware, firewall o funciones especiales de red (ppp, rdsi, etc) cuando se
necesiten y cuando por ejemplo, se cierre la conexion a internet, liberar la memoria
que usaba ese modulo.
El núcleo de un sistema operativo normalmente
contiene el código necesario para realizar las siguientes funciones:
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 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.
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.
No hay comentarios.:
Publicar un comentario