2. Funciones básicas de un Sistema Operativo Los sistemas operativos desempeñan una serie de funciones básicas esenciales para la gestión de la máquina. Entre las más destacables, cada una ejercida por un componente interno (módulo en núcleos monolíticos y servidor en microkernels), podemos reseñar las siguientes: * Gestión de los recursos de la máquina. * Ejecución de servicios para los programas * Ejecución de instrucciones (comandos) de los usuarios. Funciones básicas:
3. A su vez, los servicios principales ofertados por un sistema operativo, accesibles y manipulables a través de su API de programación, son los siguientes: * Gestión de procesos. * Gestión de memoria. * Gestión de la E/S (Entrada/Salida). * Gestión de archivos y directorios. * Comunicación y sincronización entre procesos. * Seguridad y protección. Servicios:
4.
5.
6. Definición Parte fundamental de un sistema operativo. Es el software responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma más básica, es el encargado de gestionar recursos, a través de servicios de llamada al sistema. El Kernel se encarga de decidir qué programa podrá hacer uso de un dispositivo de hardware y durante cuanto tiempo, lo que se conoce como multiplexado, implementando las abstracciones de hardware. Kernel:
8. Espacio de Usuario Espacio de Kernel syscalls Espacios Kernel: Hardware Sistema Operativo App1 App2 App3
9. Organización Interna Kernels Monolíticos Un sistema operativo con núcleo monolítico concentra todas las funcionalidades posibles (planificación, sistema de archivos, redes, controladores de dispositivos, gestión de memoria, etc.) dentro de un gran programa. El mismo puede tener un tamaño considerable, y deberá ser recompilado por completo al añadir una nueva funcionalidad. Todos los componentes funcionales del núcleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el núcleo. Todos sus componentes se encuentran integrados en un único programa que ejecuta en un único espacio de direcciones. Kernel:
10. Microkernels Se conoce como microkernel al tipo de kernel de un sistema operativo que provee un conjunto de primitivas o llamadas al sistema mínimas, para implementar servicios básicos como espacios de direcciones, comunicación entre procesos y planificación básica. Todos los otros servicios (gestión de memoria, sistema de archivos, operaciones de E/S, etc.), que en general son proveídos por el kernel, se ejecutan como procesos servidores en espacio de usuario. Kernel: