Estructuras de sistemas operativos

Objetivos del capítulo:

2.1 Servicios del sistema operativo

Un S.O proporciona un entorno para la ejecución de programas y presta ciertos servicios a los programas y a los a usuarios de dichos programas. Estos servicios difieren entre sistemas operativos pero podemos identificar una serie de clases comunes.

Funciones para el usuario

Funciones del S.O útiles para el usuario:

  1. Interfaz de usuario: Casi todos los S.O disponen de una UI(User Interface) que puede tomar diferentes formas. Uno de los tipos es la Interfaz de línea de comandos (CLI) que usa comandos de texto. Otra es la interfaz gráfica de usuario (GUI) la cual es una interfaz con un sistema de ventanas, menú, teclado, etc.
  2. Ejecución de programas: El sistema tiene que poder cargar un programa en memoria y ejecutar dicho programa.
  3. Operaciones de E/S: El S.O proporciona los medios para realizar las operaciones de E/S, por cuestiones de eficiencia y protección, se evita que los usuarios las controlen directamente.
  4. Manipulación del sistema de archivos: El sistema de archivos es importante porque los programas necesitan leer y escribir en archivos y directorios. También crearlos y borrarlos usando su nomb re, realizar búsquedas o presentar información contenida en uno. Algunos programas tienen mecanismos de gestión de permisos para conceder o denegar el acceso a los archivos o directorios basándose en su propietario.
  5. Comunicaciones: A veces los procesos se comunican con otro. Esta comunicación puede ser entre procesos que se ejecutan en la misma PC o en PC conectadas a través de una red. Las comunicaciones se pueden implementar utilizando memoria compartida o mediante paso de mensajes.
  6. Detección de errores: El S.O necesita detectar los posibles errores, estos pueden producirse en el procesador, en la memoria, en un dispositivo E/S o en los programas de usuario. Para cada tipo de error, el S.O debe llevar a cabo la acción apropiada para asegurar un funcionamiento correcto.

Funciones para garantizar eficiencia

Hay otras funciones del sistema operativo pensadas para garantizar la eficiencia del propio sistema, estas son:

  1. Asignación de recursos: Cuando hay varios usuarios, o varios trabajos ejecutándose al mismo tiempo, deben asignarse a cada uno de ellos los recursos necesarios. El sistema operativo gestionam uchos tipos diferentes de recursos (ej: ciclos de CPU, memoria principal, espacio de almacenamiento, etc …)
  2. Responsabilidad: Conviene hacer un un seguimiento de qué usuarios emplean qué clase de recursos de la computadora y en qué cantidad. Esto es con propósitos contables y para acumular estadísticas de uso.
  3. Protección y seguridad: Los propietarios de la información en un sistema de pc’s necesitan poder controlar su uso. Cuando se ejecutan de forma concurrente varios procesos distintos, no debe ser posible que un proceso interfiera con los demás procesos o con el propio sistema operativo. La protección implica asegurar que todos los acceso a los recursos del sistema estén controlados.