Cada vez que enciendes una computadora, desbloqueas un teléfono, abres una aplicación, guardas un archivo o visitas una página web, existe una pieza de software coordinando gran parte de lo que ocurre: el sistema operativo. Windows, GNU/Linux, macOS, Android e iOS son ejemplos de sistemas operativos. Aunque pueden verse muy diferentes, todos cumplen una función fundamental: administrar los recursos del dispositivo y proporcionar un entorno en el que puedan ejecutarse las aplicaciones. Para comprender áreas como administración de sistemas, redes, desarrollo de software, computación en la nube o ciberseguridad, primero es necesario entender qué hace un sistema operativo y cómo se relaciona con el hardware y las aplicaciones.
¿Qué es un sistema operativo?
Un sistema operativo (Operating System u OS) es el conjunto de software que administra los recursos de un sistema informático y proporciona servicios e interfaces para que las aplicaciones puedan utilizar esos recursos. En términos sencillos, funciona como una capa de administración entre los programas que utiliza una persona y los componentes físicos del dispositivo. Una aplicación normalmente no necesita controlar directamente cada detalle del procesador, la memoria, el almacenamiento o los dispositivos conectados. En su lugar, utiliza los mecanismos proporcionados por el sistema operativo.
USUARIO
↓
APLICACIONES
↓
SISTEMA OPERATIVO
↓
HARDWARE¿Para qué sirve un sistema operativo?
Una computadora dispone de recursos limitados: tiempo de procesador, memoria, almacenamiento, dispositivos de entrada y salida y conexiones de red. Varias aplicaciones pueden necesitar esos recursos simultáneamente. Una de las responsabilidades fundamentales del sistema operativo es administrarlos de manera controlada.
Entre sus funciones principales se encuentran:
- Administrar el procesador y la ejecución de programas.
- Gestionar la memoria RAM.
- Organizar archivos y directorios.
- Controlar dispositivos mediante controladores.
- Administrar usuarios y permisos.
- Proporcionar mecanismos de comunicación entre procesos.
- Facilitar el acceso a funciones de red.
- Proporcionar interfaces para las aplicaciones.
- Registrar eventos y actividades del sistema.
- Aplicar diferentes mecanismos de aislamiento y seguridad.
Componentes fundamentales de un sistema operativo
Un sistema operativo moderno está compuesto por numerosos subsistemas. No todos los sistemas implementan exactamente la misma arquitectura, pero existen conceptos fundamentales que encontraremos repetidamente al estudiar Windows, Linux y macOS.
Kernel
El kernel es uno de los componentes centrales del sistema operativo. Se ejecuta con privilegios elevados y administra recursos fundamentales como el procesador, la memoria y la comunicación con diferentes dispositivos. También proporciona mecanismos que permiten a los programas solicitar servicios al sistema operativo de forma controlada.
Procesos e hilos
Cuando ejecutamos un programa, el sistema operativo crea y administra las estructuras necesarias para su ejecución. Un proceso representa, de forma simplificada, una instancia de un programa en ejecución. Los procesos pueden contener uno o varios hilos de ejecución (threads), que permiten organizar diferentes secuencias de trabajo dentro del proceso. Más adelante estudiaremos por separado las diferencias entre programa, proceso e hilo.
Administración de memoria
Las aplicaciones necesitan memoria para almacenar temporalmente instrucciones y datos mientras se ejecutan. El sistema operativo administra qué regiones de memoria puede utilizar cada proceso y proporciona mecanismos de memoria virtual, protección y aislamiento. Esto permite, entre otras cosas, reducir la posibilidad de que un proceso acceda accidentalmente a la memoria perteneciente a otro.
Sistemas de archivos
Los sistemas de archivos proporcionan estructuras para organizar y acceder a información almacenada. Gracias a ellos podemos trabajar con conceptos familiares como archivos, carpetas, nombres, rutas, permisos y metadatos. Algunos ejemplos son NTFS, utilizado ampliamente por Windows; ext4, común en sistemas GNU/Linux; y APFS, utilizado por sistemas actuales de Apple.
Controladores de dispositivos
Los drivers o controladores permiten que el sistema operativo interactúe con dispositivos y componentes de hardware. Una tarjeta de red, una GPU, un dispositivo USB o determinados controladores de almacenamiento requieren software capaz de gestionar la comunicación entre el sistema y el dispositivo.
Servicios y procesos en segundo plano
Muchas funciones del sistema se ejecutan sin que el usuario interactúe directamente con ellas. Windows utiliza numerosos servicios, mientras que en sistemas Unix y similares podemos encontrar procesos de sistema y daemons que proporcionan funciones como red, registro de eventos, sincronización, impresión o administración remota.
Kernel space y user space
Los sistemas operativos modernos separan diferentes niveles de ejecución para proteger recursos críticos. De forma conceptual podemos distinguir entre espacio del kernel (kernel space) y espacio de usuario (user space). El kernel dispone de privilegios elevados para administrar recursos fundamentales. Las aplicaciones convencionales se ejecutan normalmente con privilegios más restringidos en espacio de usuario.
Información
¿Qué ocurre cuando abres un programa?
Imagina que haces clic en el icono de un navegador. Desde nuestra perspectiva simplemente aparece una ventana. Internamente intervienen diferentes componentes del sistema.
- El sistema localiza el programa y los recursos necesarios.
- Crea las estructuras necesarias para ejecutar el nuevo proceso.
- Asigna espacio de memoria y otros recursos.
- Carga instrucciones y datos necesarios.
- El planificador permite que el proceso utilice tiempo de CPU.
- El programa solicita servicios al sistema operativo cuando necesita acceder a archivos, red, memoria u otros recursos.
- Los controladores y subsistemas correspondientes permiten interactuar con el hardware cuando es necesario.
USUARIO
↓
APLICACIÓN
↓
INTERFACES / LLAMADAS AL SISTEMA
↓
KERNEL
↓
HARDWARE¿Dónde encontramos sistemas operativos?
Los sistemas operativos no existen únicamente en computadoras personales. Podemos encontrarlos en numerosos tipos de dispositivos y entornos.
- Escritorio: computadoras personales y estaciones de trabajo.
- Servidor: infraestructura web, bases de datos, servicios empresariales y nube.
- Móviles: teléfonos y tabletas.
- Embebidos: dispositivos diseñados para funciones específicas.
- Tiempo real (RTOS): sistemas donde responder dentro de determinados límites temporales es un requisito fundamental.
Windows, GNU/Linux y macOS
A lo largo de esta serie trabajaremos principalmente con tres grandes familias de sistemas utilizados en computadoras y servidores: Windows, GNU/Linux y macOS. Cada una tiene arquitecturas, herramientas y ecosistemas diferentes, aunque comparten numerosos conceptos fundamentales.
| Sistema | Base / kernel | Usos frecuentes |
|---|---|---|
| Windows | Windows NT | Escritorio, empresas, videojuegos y servidores |
| GNU/Linux | Kernel Linux + herramientas de espacio de usuario | Servidores, nube, desarrollo, infraestructura y escritorio |
| macOS | Darwin / kernel XNU | Computadoras Apple, desarrollo y escritorio |
¿Por qué aprender sistemas operativos antes de estudiar ciberseguridad?
Para proteger un sistema primero necesitamos comprender su comportamiento normal. Conceptos como procesos, memoria, usuarios, permisos, servicios, archivos, registros y conexiones de red aparecen constantemente en seguridad informática. Cuando más adelante estudiemos hardening, análisis forense, malware, detección de amenazas o respuesta a incidentes, volveremos una y otra vez a estos fundamentos.
Recomendación de seguridad
¿Qué aprenderemos después?
En este artículo construimos una visión general del sistema operativo. Todavía no hemos profundizado en ninguno de sus componentes, y eso es intencional. En los siguientes artículos iremos desmontando esta arquitectura pieza por pieza hasta comprender cómo funciona realmente un sistema moderno.
Próximamente estudiaremos:
- Kernel y arquitectura del sistema.
- Espacio de usuario.
- Procesos e hilos.
- Administración de memoria.
- Sistemas de archivos.
- Usuarios y permisos.
- Servicios.
- Terminal y shell.
- Arranque del sistema.
- Redes desde el sistema operativo.
- Logs y observabilidad.
- Seguridad y hardening.

