Sistema Operativo

Autor/a

Luis Torres

1 Introducción a los sistemas operativos

Es necesario comprender que la actividad informática se centra en un elemento físico [1], esto es, un equipo de cómputo.

Entre los equipos de cómputo, podemos citar:

  • Computadora o PC
  • Tablets
  • Teléfonos inteligentes (smartphones)

Estos equipos de cómputo (en adelante, computadoras) son máquinas de origen electrónico con una o más unidades de proceso, además de otros componentes periféricos controlados por programas almacenados en su memoria. Pueden realizar una gran variedad de trabajos.

A todo componente físico de una computadora, es decir, todo aquel componente con el cual podemos interactuar físicamente, se le denomina hardware.

Todo hardware de una computadora necesita de información que le indique cómo funcionar. Su funcionamiento está definido por instrucciones (programas), que constituyen su soporte lógico (software).

El software incluye tanto el sistema operativo como las aplicaciones que utilizamos para realizar tareas específicas.

Sin software, el hardware no podría realizar ninguna operación útil.

1.1 Sistema Operativo. Concepto

Al comprender que el sistema operativo constituye un software, podemos definirlo de la siguiente forma:

Concepto

Un Sistema Operativo es el soporte lógico que controla el funcionamiento del equipo físico [1].

Dependiendo el punto de vista, podemos encontrar otras definiciones de un sistema operativo:

1.1.1 Punto de vista del usuario

Concepto. Punto de vista del usuario

Un Sistema Operativo es un conjunto de programas y funciones que ocultan los detalles del hardware, facilitando al usuario el acceso al mismo.

La ocultación de los detalles del hardware persigue dos objetivos
  • Abstracción: El sistema operativo proporciona una interfaz simplificada que permite a los usuarios y a los desarrolladores de software interactuar con el hardware sin necesidad de conocer su funcionamiento interno. Esto se logra a través de la creación de capas de abstracción que ocultan la complejidad del hardware y presentan una interfaz más amigable y coherente.
  • Seguridad: El sistema operativo implementa mecanismos de protección para asegurar que los recursos del sistema sean utilizados de manera controlada y segura. Esto incluye la gestión de permisos de acceso, la protección de la memoria, y la prevención de interferencias entre procesos, garantizando así la estabilidad y la integridad del sistema.

1.1.2 Punto de vista de Gestor de Recursos

Concepto. Punto de vista del gestor de recursos

Un Sistema Operativo es el administrador de recursos ofrecidos por el hardware para alcanzar un eficaz rendimiento de los mismos [1].

Los recursos fundamentales que administra son:

  • El procesador
  • La memoria
  • La entrada/salida.
  • La información.

Basado en las definiciones mencionadas, podemos concluir que:

Concepto general

Un Sistema Operativo es un conjunto de programas relacionados entre si, que contribuyen a que la computadora lleve a cabo correctamente su trabajo [1].

Además podemos afirmar que los sistemas operativos tienen dos objetivos fundamentales
  • Facilitar el trabajo al usuario.
  • Gestionar de forma eficiente los recursos.

1.2 Servicios del sistema operativo

Los servicios del sistema operativo son el conjunto de funciones esenciales que permiten la gestión, coordinación y protección de los recursos de hardware y software de una computadora. Actúan como intermediarios entre las aplicaciones y el hardware, asegurando que cada proceso disponga de los recursos necesarios para su ejecución de manera segura y eficiente. A continuación, se presentan los servicios fundamentales:

Gestión de Procesos
Se encarga de la creación, ejecución, planificación y finalización de los procesos o tareas. Este servicio coordina el uso del procesador, permitiendo la ejecución concurrente de múltiples aplicaciones y garantizando la adecuada asignación del tiempo de CPU a cada proceso.
Gestión de Memoria
Administra la asignación y liberación de la memoria principal para los procesos. Utiliza técnicas como la paginación, segmentación y memoria virtual para optimizar el uso del espacio, asegurar el aislamiento entre procesos y proteger los datos almacenados en memoria.
Gestión del Sistema de Archivos
Organiza, almacena y protege los datos en dispositivos de almacenamiento, como discos duros o SSDs. Facilita operaciones básicas como la creación, lectura, escritura y eliminación de archivos, y mantiene una estructura lógica (directorios y subdirectorios) que permite el acceso eficiente y seguro a la información.
Gestión de Entrada/Salida (E/S)
Coordina la comunicación entre el sistema y los dispositivos periféricos (teclado, ratón, impresoras, etc.). Este servicio se encarga de la transferencia de datos entre el hardware y los procesos, gestionando controladores (drivers), buffering y mecanismos de spooling para optimizar el rendimiento y la eficiencia en las operaciones de entrada y salida.

1.2.1 Arquitectura basada en servicio

El concepto de arquitectura basada en servicio consiste en diseñar el sistema operativo como un conjunto de módulos o servicios independientes, cada uno responsable de una funcionalidad específica. Cada servicio expone una interfaz bien definida, lo que permite su integración y reutilización sin necesidad de conocer los detalles internos de su implementación. Este enfoque modular facilita la actualización, el mantenimiento y la escalabilidad del sistema, ya que cada componente puede evolucionar de forma independiente, adaptándose a nuevas necesidades o tecnologías sin afectar el funcionamiento global.

1.3 Tipos de sistemas operativos (por funcionalidad)

Existen diversos criterios para clasificar a los sistemas operativos, por ejemplo aquellos diseñados para dispositivos móviles (Android, iOS), para escritorio (Linux, Windows, etc.). Esta clasificiación se centra en clasificarlas por su funcionalidad.

  1. Sistema operativo por lotes (Batch)
    Este tipo de sistema operativo no interactúa directamente con el usuario. Un operador se encarga de tomar trabajos (o tareas) similares y agruparlos en lotes. Es responsabilidad del operador organizar y clasificar estos trabajos de acuerdo con sus requerimientos. El propósito principal es gestionar y ejecutar una gran cantidad de trabajos de forma eficiente, procesándolos en grupos.
  2. Sistema operativo de multiprogramación
    En los sistemas operativos de multiprogramación, más de un programa se carga en la memoria principal simultáneamente, permitiendo que cualquiera de ellos pueda estar en ejecución. Este enfoque busca aprovechar al máximo los recursos del sistema, especialmente la CPU, al reducir los tiempos de espera.
  3. Sistema operativo multitarea (Timesharing)
    Este modelo es una evolución de la multiprogramación en el que los procesos se ejecutan en un esquema de “round-robin”. Cada tarea recibe un intervalo de tiempo (llamado quantum) para ejecutarse. Una vez agotado ese tiempo, el sistema cambia al siguiente proceso. Esta técnica garantiza que todos los usuarios y procesos tengan una oportunidad equitativa de utilizar la CPU.
  4. Sistema operativo distribuido
    Los sistemas operativos distribuidos representan un avance en la tecnología informática. En estos sistemas, varias computadoras autónomas están interconectadas a través de una red compartida y colaboran entre sí. Cada nodo posee su propia CPU y memoria, lo que permite que el usuario acceda a archivos o aplicaciones que residen en otros equipos de la red (acceso remoto).
  5. Sistema operativo en tiempo real (real time)
    Los sistemas operativos en tiempo real están diseñados para aplicaciones en las que el tiempo de respuesta es crítico. El intervalo necesario para procesar y responder a una entrada (tiempo de respuesta) es muy corto y predecible, lo que es fundamental en aplicaciones donde cualquier retraso puede tener consecuencias graves (por ejemplo, sistemas de misiles, control de tráfico aéreo o robótica).
[1]
E. A. Lacharro, J. M. Pascual, y J. A. P. Campanero, Introducción a los sistemas operativos: DOS, UNIX, OS/2, MVS. McGraw-Hill, 1993.