LABORATORIO DE SISTEMAS OPERATIVOS 2
PROFESORA GRISELDA POLACZINSKI
SISTEMAS OPERATIVOS
KERNEL
01 Qué es el kernel
02 Estructura
03 Tareas del kernel
CONTENIDOS
04 Funciones del kernel
05 Tipos de kernel
INTRODUCCIÓN
El kernel es el núcleo de un sistema Sin embargo, no solo es el núcleo del
operativo y, por tanto, la interfaz entre sistema, sino también un programa que
el software y el hardware. Es por ello controla todos los accesos al
por lo que se está usando procesador y a la memoria, es
continuamente. responsable de los drivers
(controladores) más importantes y
puede acceder directamente al
hardware. Un kernel es la base de la
interacción entre el hardware y el
software y gestiona sus recursos de la
forma más eficiente posible.
¿QUÉ ES EL KERNEL?
EL KERNEL SE ENCUENTRA EN EL
CENTRO DEL SISTEMA
OPERATIVO Y CONTROLA TODAS
LAS FUNCIONES IMPORTANTES
DEL HARDWARE, YA SEA UN
SISTEMA LINUX MACOS O
WINDOWS, UN SMARTPHONE, UN
SERVIDOR, UNA VIRTUALIZACIÓN
O CUALQUIER OTRO TIPO DE
ORDENADOR.
La capa más baja es la interfaz con el hardware (procesadores,
memoria y dispositivos). Esta capa realiza tareas como la de
controlador de red o controlador PCI Express.
Sobre ella se encuentra la gestión de la memoria, que distribuye
la memoria RAM y la memoria virtual.
La siguiente capa contiene el gestor de procesos (scheduler), que
KERNEL - ESTRUCTURA se encarga de la gestión del tiempo y permite el multitasking.
La siguiente capa contiene el gestor de procesos (scheduler), que
se encarga de la gestión del tiempo y permite el multitasking.
A continuación, el gestor de dispositivos (Device Management).
La capa más alta es el sistema de archivos. Allí, se le asigna un
espacio en la memoria principal (caché, RAM, etc) o secundaria
(disco duro, USB, etc) a los procesos.
SECUENCIA DEL PROCESO
Un kernel acompaña y guía durante todo el recorrido
desde el hardware del sistema hasta el software de
aplicación. Su trabajo termina donde comienza el
acceso del usuario: en la Interfaz Gráfica del Usuario
(GUI por sus siglas en inglés). Por tanto, el kernel
limita directamente con el shell (es decir, con la
interfaz del usuario). Lo mejor es pensar que el kernel
es el núcleo y el shell es un anillo alrededor de este.
¿CUÁLES SON LAS TAREAS DE UN KERNEL?
El principal cometido del kernel es el procesamiento paralelo de
diferentes tareas, el multitasking. Para ello debe, por un lado, cumplir
con los tiempos establecidos y, por otro, permanecer disponible para
tareas adicionales.
La norma necesita excepciones para poder funcionar en un sistema tan
acelerado como es el sistema operativo. Por tanto, el kernel solo sirve
de intermediario para el software del sistema, el software de
aplicación y las bibliotecas. La interfaz gráfica de un sistema operativo
es completamente independiente del kernel, incluso en el caso de Linux.
LAS CUATRO FUNCIONES DEL KERNEL
PUEDEN DERIVARSE DE SUS COMPONENTES:
1. GESTIÓN DEL ALMACENAMIENTO: CONTROLA CUÁNTA MEMORIA
SE UTILIZA Y DÓNDE.
2. GESTIÓN DE PROCESOS: DETERMINA QUÉ PROCESOS PUEDE
UTILIZAR LA CPU, CUÁNDO Y DURANTE CUÁNTO TIEMPO.
3. CONTROLADOR DE DISPOSITIVOS: COMUNICA EL HARDWARE
CON LOS PROCESOS.
4. LLAMADAS AL SISTEMA Y SEGURIDAD: RECIBE PETICIONES DE
SERVICIO DE LOS PROCESOS.
EL KERNEL EN EL SISTEMA OPERATIVO
1. HARDWARE. LA BASE DEL SISTEMA QUE CONSISTE
EN LA MEMORIA, EL PROCESADOR Y LOS
DISPOSITIVOS DE ENTRADA Y SALIDA. LA CPU
REALIZA LA LECTURA Y ESCRITURA DE CÓDIGO AL
IGUAL QUE LOS CÁLCULOS QUE REQUIERE LA
MEMORIA.
2. KERNEL. EL NÚCLEO DE UN SISTEMA OPERATIVO.
INDICA A LA CPU LO QUE DEBE HACER.
3. PROCESOS DE USUARIO. TODOS LOS PROCESOS EN
EJECUCIÓN QUE GESTIONA EL KERNEL. EL KERNEL
PERMITE LA COMUNICACIÓN ENTRE PROCESOS Y
SERVIDORES, TAMBIÉN CONOCIDA COMO
COMUNICACIÓN ENTRE PROCESOS (IPC).
Existen básicamente dos modos para el código de un
sistema: modo kernel o modo usuario. El código en modo
kernel tiene acceso ilimitado al hardware, mientras que
el código en modo usuario tiene acceso restringido.
Cuando se produce un error en el modo de usuario, no
ocurre mucho: de hecho, en ese momento el kernel
interviene y repara los posibles daños. Por otro lado, un
fallo del kernel puede hacer caer todo el sistema.
LOS TRES TIPOS DE KERNEL
KERNEL MONOLÍTICO MICROKERNEL FASE 3
Un kernel grande para todas El microkernel se ha diseñado La combinación del kernel
las tareas. Es el único intencionadamente de un tamaño monolítico y el microkernel se
responsable de la gestión de la pequeño para que en caso de fallo denomina kernel híbrido. En
memoria y de los procesos, de no paralice todo el sistema este caso, el kernel grande se
la comunicación entre procesos operativo. No obstante, para que hace más compacto y
y proporciona funciones de pueda asumir las mismas funciones modulable. Otras partes del
soporte de drivers y hardware. que un kernel grande, está dividido kernel pueden cargarse
Los sistemas operativos que en varios módulos. Como ejemplo dinámicamente. Esto ya ocurre
usan el kernel monolítico son de aplicación solo existe el en cierta medida en Linux y OS
Linux, OS X y Windows. componente Mach de OS X, ya que X.
hasta ahora no hay ningún sistema
operativo con microkernel.