Ir al contenido

1. Definiciones

Qué es un sistema operativo y por qué resulta difícil definirlo con precisión: sus distintas perspectivas y las funciones que cumple para el usuario y el sistema informático.

8 min de lectura

En general no existe una definición universal de lo que es un sistema operativo, aunque sí algunas propuestas de diferentes fuentes.

Una definición común es que el sistema operativo es «aquel programa que se ejecuta continuamente en el ordenador», desde que se inicia hasta que se apaga. Sin embargo, excepto el caso de algunos sistemas muy simples, esta definición excluye como parte del sistema operativo algunos servicios que intuitivamente solemos considerar dentro del mismo. Por regla general, lo que se ejecuta continuamente en el ordenador es un componente que denominamos comúnmente como kernel o núcleo del sistema, siendo el resto: servicios, programas del sistema y aplicaciones. Sin embargo, ¿no deberíamos considerar también a estos otros componentes como parte del sistema operativo ya que en muchos casos son necesarios para su funcionamiento?

El uso de esta definición se complica aún más si consideramos el caso de los sistemas operativos microkernel. En los sistemas operativos con esta estructura la funcionalidad implementada en el núcleo del sistema es la mínima necesaria. Por lo tanto, si aplicamos la definición anterior a estos sistemas operativos, no podríamos decir que servicios básicos como la comunicación en red, los sistemas de archivos y la gestión de la memoria virtual son parte del sistema operativo, porque estos servicios no siempre se implementan en el núcleo del sistema en este tipo de sistemas.

En definitiva, esta definición no es tan precisa como parece a primera vista y no facilita diferenciar entre lo que es parte del sistema operativo y lo que no lo es.

Algunas fuentes consideran que esta es una cuestión de mercado, es decir, que lo que se considera parte del sistema operativo depende de lo que nos venden cuando adquirimos un ordenador.

Sin embargo esta definición tampoco es muy precisa, puesto que las características incluidas pueden variar enormemente de un sistema a otro. Por ejemplo, algunos sistemas operativos apenas alcanzan el megabyte de espacio, careciendo incluso de las aplicaciones más básicas, mientras que otros ocupan gigabytes de espacio, incluyen una interfaz gráfica basada en ventanas y las aplicaciones más comunes que cualquier usuario puede necesitar.

Aunque pueda parecer lo contrario, la cuestión de qué componentes son parte o no de un sistema operativo no es trivial. Por ejemplo, Microsoft y el Departamento de Justicia de los Estados Unidos (DOJ) se enfrentaron en 1998 por la inclusión del navegador Internet Explorer como parte del sistema operativo Microsoft Windows1. Microsoft afirmaba que ambos productos eran realmente uno solo y que su unión fue el resultado de un proceso de innovación. Mientras tanto, el DOJ alegaba que el navegador era un producto distinto y separado, que no formaba parte del sistema operativo y que todo el asunto restringía la libre competencia en el mercado de los navegadores. El DOJ ganó el caso en 1999 y Microsoft tuvo que separar ambos productos.

Por lo que hemos visto hasta ahora, parece evidente que no es sencillo definir lo que «es» un sistema operativo. Sin embargo, es posible que tengamos más suerte definiéndolo a través de lo que «hace». Es decir, describiendo sus funciones dentro de un sistema informático cualquiera.

Vista abstracta de los componentes de un sistema informático.

Como se ilustra en la figura anterior, un sistema informático puede ser dividido, grosso modo, en cuatro componentes: el hardware, los usuarios, los programas de aplicación y el sistema operativo:

  • Programas de aplicación. El objetivo fundamental de cualquier sistema informático es ejecutar programas para resolver los problemas informáticos de los usuarios. Con ese objetivo se construye su hardware y se desarrollan los programas de aplicación —procesadores de textos, hojas de cálculo, compiladores, navegadores de Internet, etc.— que usan los usuarios para resolver sus problemas.

  • Hardware. El hardware —la CPU, la memoria, los dispositivos de entrada/salida, etc.— proporcionan los recursos computacionales del sistema informático. Los programas de aplicación necesitan usar estos recursos computacionales para resolver los problemas informáticos de los usuarios.

  • Sistema operativo. En un sistema informático las aplicaciones necesitan realizar operaciones comunes, como acceder a los dispositivos de E/S o reservar porciones de la memoria. En lugar de que cada aplicación intente hacerlo por su cuenta, es mucho más sencillo que estas operaciones comunes estén centralizadas en el sistema operativo.

Por lo tanto, el sistema operativo controla, coordina el acceso y asigna los recursos computacionales del hardware a los distintos programas de aplicación. Sin embargo, esta es solo una de las dos perspectivas desde las que se pueden analizar las funciones del sistema operativo. Es la denominada como: perspectiva del sistema informático, mientras que la otra es la perspectiva del usuario.

Un sistema informático tiene múltiples recursos hardware, como son: tiempo de CPU, espacio de memoria, espacio de almacenamiento de archivos, dispositivos de E/S, etc. También tiene recursos software ofrecidos por algunos programas que se ejecutan en el sistema, como son: servicios de red, servicios de impresión, seguridad, etc. Estos recursos los necesitan los programas de aplicación para resolver los problemas informáticos de los usuarios.

Dentro del sistema informático, el sistema operativo es el programa más íntimamente relacionado con el hardware y su función es gestionar los recursos hardware y software disponibles, asignarlos a los diferentes programas, resolver los conflictos en las peticiones y hacer que el sistema opere eficientemente para resolver los problemas de los usuarios. Además, es el programa encargado del control de la ejecución de los programas de los usuarios, por lo que tiene la tarea de prevenir errores y el uso inadecuado del ordenador.

En resumen, las funciones del sistema operativo desde la perspectiva del sistema informático son:

  • Gestionar los recursos computacionales del sistema informático.

  • Controlar la ejecución de los programas de usuario y el acceso a los dispositivos de E/S.

Los sistemas operativos existen porque es más sencillo crear sistemas informáticos útiles para los usuarios con ellos que sin ellos. Un sistema operativo no hace un trabajo directamente útil para los usuarios, sino que proporciona un entorno adecuado para que los programas de aplicación lo hagan.

Si intentamos definir las funciones del sistema operativo desde nuestra experiencia como usuarios, seguramente haríamos referencia a la interfaz que nos proporciona para utilizar el sistema informático. Es decir, haríamos referencia a aspectos como:

  • La interfaz de usuario que nos permite interactuar con el sistema informático, ya sea a través de una interfaz gráfica basada en ventanas o mediante una interfaz de línea de comandos.

  • La organización y gestión del almacenamiento. Por ejemplo, si el sistema permite crear directorios y buscar, copiar, crear, borrar y proteger los archivos personales.

  • La ejecución de programas, como la forma en que podemos iniciar, detener y supervisar los programas que se ejecutan en el sistema informático o si podemos ejecutar varios programas a la vez, tener programas en segundo plano, cambiar entre aplicaciones.

Sin embargo, puesto que la interfaz de los sistemas operativos varía mucho entre diferentes tipos de sistemas, la definición de las funciones del sistema operativo desde la perspectiva del usuario suele ser muy poco precisa.

Perspectiva del usuario vs. tipo de sistema informático

Sección titulada «Perspectiva del usuario vs. tipo de sistema informático»

Los usuarios que se sientan frente a un sistema de escritorio disponen de: monitor, teclado, ratón y una unidad central. Estos sistemas se diseñan buscando la máxima productividad en equipos donde un usuario monopoliza todos los recursos; por lo que el sistema operativo se diseña considerando fundamentalmente la facilidad de uso, poniendo algo de atención en el rendimiento y nada en el aprovechamiento de los recursos.

Esto difiere de los mainframes, otro tipo de sistema informático, donde múltiples usuarios se sientan frente a terminales conectadas a un gran ordenador central. Así todos los usuarios comparten los recursos del sistema informático y pueden intercambiar información entre sí. En este tipo de sistemas el sistema operativo maximiza el aprovechamiento de los recursos con el objeto de garantizar que toda la CPU, memoria y E/S son empleadas de forma eficiente y que ningún usuario utiliza más de lo que le corresponde. Obviamente, en este tipo de sistemas la facilidad de uso está en un segundo plano, por lo que ofrecen un tipo de experiencia de usuario muy diferente a la de los sistemas de escritorio.

Por otro lado, otros sistemas operativos se diseñan para sistemas informáticos que tienen poca o ninguna interacción con los usuarios. Es, por ejemplo, el caso de los sistemas empotrados que se utilizan en los electrodomésticos, en los dispositivos médicos o en vehículos.

Estos tipos de sistemas ofrecen interfaces muy diferentes de cara al usuario, lo que dificulta obtener una definición única de sistema operativo desde la perspectiva del usuario. Sin embargo, observa que en los tres tipos de sistemas que hemos comentado, el sistema operativo es siempre el responsable de la gestión de los recursos computacionales y del control de los programas. Es decir, el sistema operativo tiene siempre las mismas funciones desde la perspectiva del sistema informático, incluso en sistemas tan diferentes. Ahora bien, en lo que sí difieren es en la forma en que estas funciones se implementan, debido a que los objetivos de diseño de cada tipo de sistema informático son muy diferentes. Por ejemplo, en los tres sistemas el sistema operativo gestiona recursos como la memoria y el tiempo de CPU, pero la forma en la que se reparten exactamente estos recursos, suele ser muy diferente.

  1. Wikipedia, s.v. «Caso Estados Unidos contra Microsoft», última modificación el 14 de mayo de 2025.