El núcleo, los servicios y el intérprete de comandos en los sistemas operativos
Clasificado en Informática
Escrito el en español con un tamaño de 3,95 KB
El núcleo
Es la parte del sistema que interacciona directamente con el hardware, dejando que las aplicaciones accedan a estos de forma segura. Se encarga de la gestión de los recursos del mismo (procesador, memoria...)
La gestión de los recursos la realiza en función de los servicios. Si se necesita uso de la memoria, la aplicación hace una llamada al sistema para alertar al gestor de memoria. Éste se encarga de localizar las zonas ocupadas y finalmente es el núcleo el que entra en contacto con el hardware para que la acción se lleve a cabo.
Los servicios
Cuando un usuario ejecuta una aplicación, ésta necesitará el uso de los componentes hardware que forman el sistema informático. Por ejemplo, cuando mandamos a imprimir un archivo, un componente del sistema operativo se encargará de procesar esta petición y ver el estado de la impresora instalada.
En este proceso se observa la existencia de una interfaz de comunicación entre aplicaciones y un componente que es el gestor del elemento que en cada caso necesitamos usar.
- Gestor de memoria: gestiona la memoria principal (RAM). Se encarga de conocer las partes de la memoria que están libres u ocupadas, además de la asignación y liberación de los procesos.
- Gestor de procesos: se encarga de la gestión del procesador. Asigna en cada momento qué proceso debe usar el procesador, y en caso de que haya varios procesos, evita el acceso al mismo tiempo. Una vez finalizada la ejecución, se encarga de destruir los procesos.
- Gestor E/S: gestiona los periféricos.
- Gestor de archivos y directorios: encargado de la gestión de almacenamiento secundario.
- Comunicación y sincronización entre procesos: establece mecanismos para que los procesos puedan comunicarse entre sí y sincronizarse.
- Seguridad
Intérprete de comandos, órdenes o Shell
Proporciona al usuario la interfaz con la que puede "hablar" con el PC. El usuario dispondrá de una serie de comandos que ejecutará y que el Shell interpretará proporcionando información correcta o realizando alguna operación concreta.
Sistemas operativos monolíticos
No presentan una estructura clara, lo forma un único programa donde se integran todos los componentes (núcleo, servicios e intérprete).
Sistemas operativos estructurados
Sistemas operativos estructurados por capas:
Cada capa define claramente una función del SO y ofrece servicios a la que está justo por encima de ella en la estructura a través de una interfaz de servicios.
Al estar estructurado en capas, presenta la ventaja de que divide sus funciones y cada parte es menos compleja. Cada capa conoce las funciones que ella implementa y no las de las demás, solo la interfaz y cabecera de funciones que puede usar la que está justo debajo de ella.
Estructura de capas (1968) en el SO THE (Technische Hogeschool Eindhoven):
- Programas de usuario
- Gestión de la E/S
- Controlador de la consola
- Gestión de la memoria
- Planificación de la CPU y multiprogramación
- Hardware
Sistemas operativos cliente-servidor:
Pretende que la mayoría de las funciones que tiene que desarrollar el SO se implementen a través de procesos de usuario. Tenemos un micronúcleo y servidores (procesos que desarrollan la funcionalidad antes comentada).
Disponemos de un núcleo que se encargará sobre todo de la gestión básica de procesos, interrupciones, memoria y servicios básicos de comunicación entre procesos.
Los SO Windows XP, Vista, 7... siguen este esquema, aunque algunos de sus servidores (gestores) pueden ejecutarse en modo núcleo, aumentando la eficiencia. Se denominan SO híbridos.
Funciones de un sistema operativo
Básicamente, un SO debe gestionar los recursos hardware del sistema informático donde se ejecuta y proporcionar una interfaz adecuada para su uso por parte del usuario.