Sistemas Operativos: Componentes, Clasificación y Núcleo
¿Qué es un Sistema Operativo?
Un sistema operativo es un conjunto de programas que forman el software encargado de ejercer el control y la coordinación entre el hardware y los usuarios.
Tareas del Sistema Operativo
- Realizar la interfaz sistema-usuario
- Compartir los recursos del hardware entre los usuarios
- Permitir a los usuarios compartir sus datos entre ellos
- Prevenir que las actividades de un usuario no interfieran en las de los demás usuarios
- Calendarizar los recursos de los usuarios
- Facilitar el acceso a los dispositivos de E/S
- Recuperarse de fallas o errores
- Llevar el control sobre el uso de los recursos
Componentes del Sistema Operativo
- Manejo de procesos
- Manejo de E/S
- Manejo de Memoria
- Manejo del Sistema de Archivos
- Seguridad y Protección
- Comunicación y sincronización
Clasificación de los Sistemas Operativos
- Monousuario - Multiusuario
- Monotarea - Multitarea
- Monoproceso - Multiproceso
- Tiempo Real - Tiempo compartido
Núcleo del Sistema Operativo (Kernel)
Funciones del Núcleo
- Administración de la memoria para todos los programas y procesos en ejecución
- Administración del tiempo de procesador que los programas y procesos en ejecución utilizan
- Es el encargado de que podamos acceder a los periféricos/elementos de nuestra computadora de una manera cómoda
Tipos de Núcleo
Monolítico: Facilitan abstracciones del hardware subyacente realmente potentes y variadas.
Micronúcleos (Microkernel): Proporcionan un pequeño conjunto de abstracciones simples del hardware, y usan las aplicaciones llamadas servidores para ofrecer mayor funcionalidad.
Híbridos (Micronúcleos modificados): Muy parecidos a los micronúcleos puros, excepto porque incluyen código adicional en el espacio de núcleo para que se ejecute más rápidamente.
Exonúcleos: Permiten el uso de bibliotecas que proporcionan mayor funcionalidad gracias al acceso directo o casi directo al hardware.
Componentes del Núcleo
FLIH o manejador de interrupciones de primer nivel: Permite interrumpir la ejecución de un proceso ante el acontecimiento de un suceso determinado, tomando el control del SO.
Despachador: Es el encargado de pasar trabajos o procesos a la memoria principal y a la CPU, decidiendo qué procesos de los que están listos pasarán a ejecución cuando la CPU se libere de algún otro proceso.
Mecanismos de comunicación: Los procesos compiten por el uso de recursos limitados como los procesadores, la memoria o los ficheros. Las dos actividades de cooperación y competición llevan asociada la necesidad de algún tipo de comunicación y sincronización entre los procesos.