Variedad de sistemas Operativos

Existen y han existido una gran variedad de sistemas operativos, cuyos objetivos son y fueron distintos por la epoca en la que fueron diseñados y la evolución de la tecnología en dicho momento.

La evolución de los sistemas operativos refleja cómo han cambiado las necesidades de los usuarios y de la tecnología a lo largo del tiempo. Desde los primeros sistemas monotarea hasta los modernos sistemas en la nube, cada tipo de sistema operativo se ha diseñado con unos objetivos concretos y ha dado respuesta a diferentes contextos: científicos, industriales, empresariales o de uso personal.

En la siguiente tabla se resumen los principales tipos de sistemas operativos, sus características clave, sus objetivos y sus ámbitos de uso más habituales.

Tipo de SOEjemplos históricos / actualesCaracterísticas principalesObjetivos / VentajasUsos principales
Monotarea, MonousuarioMS-DOS, CP/MSolo un usuario, un programa en ejecución a la vezSimplicidad, poco consumo de recursosPCs de los 80, sistemas embebidos simples
Monotarea, MultiusuarioAlgunos sistemas de control industrialVarios usuarios, pero solo un programa a la vezCompartir recursos entre usuarios aunque con ejecución limitadaSistemas antiguos de terminales
Multitarea, MonousuarioWindows 3.x, MacOS clásicoUn solo usuario, varios programas concurrentesMejor experiencia de usuario, ejecución simultánea de aplicacionesPCs personales
Multitarea, MultiusuarioUNIX, Linux, Windows NT/2000+, macOS XVarios usuarios, múltiples procesos simultáneosAprovechar hardware, seguridad entre usuarios, escalabilidadServidores, estaciones de trabajo, PCs actuales
Batch (procesamiento por lotes)IBM OS/360, sistemas mainframe antiguosProcesa trabajos en cola sin interacción directaMaximizar rendimiento del hardware, optimizar tiempo de CPUMainframes, cálculos científicos antiguos
Interactivos (tiempo compartido)UNIX (años 70), MulticsVarios usuarios interactúan en sesiones concurrentesCompartir CPU entre usuarios en tiempo realUniversidades, laboratorios, minicomputadoras
Tiempo Real (RTOS)VxWorks, QNX, FreeRTOS, RT-LinuxRespuestas deterministas y rápidas, prioridad en tareas críticasGarantizar tiempos de respuesta predeciblesIndustria, automoción, aeronáutica, telecomunicaciones
DistribuidosAmoeba, Plan 9, sistemas basados en clústerConjunto de máquinas visto como un solo sistemaTransparencia de localización, escalabilidad, tolerancia a fallosClústeres de investigación, servidores en red
EmbebidosAndroid Things, sistemas en routers, IoTSO reducido, adaptado a dispositivos con pocos recursosOptimizar consumo y tamaño, integrarse con hardware específicoIoT, electrodomésticos, coches, móviles
De redNovell NetWare, Windows Server, Linux ServerCentrados en servicios de red, gestión de usuarios y recursos compartidosCompartir archivos, impresoras, servicios de autenticaciónEmpresas, servidores de red local
MóvilesAndroid, iOS, KaiOSDiseñados para dispositivos móviles, optimizados para batería y sensoresInterfaz táctil, seguridad, bajo consumoSmartphones, tablets
MainframeIBM z/OS, OS/390Enormes capacidades de procesamiento, gran fiabilidadProcesar millones de transacciones, alta disponibilidadBanca, aerolíneas, grandes empresas
De propósito generalWindows, Linux, macOSVersátiles, multitarea, soportan gran variedad de hardware y aplicacionesEquilibrio entre usabilidad y potenciaPCs, portátiles, servidores
De propósito específicoSistemas embebidos industriales, RTOSAjustados a una tarea o dispositivo concretoMáxima eficiencia en la tarea definidaControladores de robots, PLCs, dispositivos médicos
Virtualizados / HipervisoresVMware ESXi, Xen, KVM, Hyper-VGestionan máquinas virtuales, actúan como SO base o hipervisorConsolidar servidores, aislamiento de entornos, flexibilidadCentros de datos, nubes, entornos de prueba
En la nube (Cloud OS)Google Fuchsia, sistemas de contenedoresBasados en virtualización ligera y servicios distribuidosElasticidad, escalado bajo demanda, integración con infraestructuras distribuidasCloud computing, SaaS, PaaS, IaaS

Monotarea, Monousuario

Estos sistemas fueron los primeros en popularizarse en ordenadores personales durante los años 80. Solo permiten ejecutar un programa a la vez, y únicamente un usuario puede usar la máquina. Esto significa que si, por ejemplo, el sistema está editando un texto, no puede a la vez imprimirlo o realizar cálculos en paralelo. Eran sencillos, rápidos de comprender y poco exigentes en cuanto a recursos de hardware, lo que los hacía ideales para computadoras con memoria y procesadores muy limitados. Ejemplos clásicos son MS-DOS y CP/M.


Monotarea, Multiusuario

Se trata de sistemas menos habituales, diseñados para que varios usuarios puedan conectarse (por ejemplo, a través de terminales), aunque solo se ejecute un programa en cada momento. Esto permitía que diferentes personas compartieran un mismo ordenador central, aunque el rendimiento estaba limitado porque no había multitarea real. Eran usados en entornos académicos o industriales tempranos, donde la prioridad era aprovechar un sistema costoso entre varios usuarios.


Multitarea, Monousuario

Este tipo de sistemas surgió con la llegada de los ordenadores personales más potentes. Permitían que un único usuario ejecutara varias aplicaciones a la vez, como escribir un documento mientras escuchaba música y descargaba un archivo. Aunque la multitarea no siempre era real (a veces era cooperativa y dependía de que las aplicaciones cedieran el control), supuso un gran avance en productividad. Ejemplos históricos fueron Windows 3.x o el MacOS clásico.


Multitarea, Multiusuario

Estos sistemas son los que hoy consideramos “estándar” en entornos profesionales y domésticos. Varios usuarios pueden trabajar en el mismo sistema de manera simultánea, cada uno con sus permisos, recursos aislados y procesos en ejecución. Aportan seguridad, estabilidad y escalabilidad, lo que los hace ideales tanto para servidores como para ordenadores personales. Ejemplos son UNIX, Linux, Windows NT y posteriores o macOS moderno.


Procesamiento por lotes (Batch)

Los sistemas por lotes fueron de los primeros en usarse en los mainframes de mediados del siglo XX. No existía interacción directa con el ordenador: el usuario preparaba un “lote” de trabajos (por ejemplo, un conjunto de tarjetas perforadas) y el sistema los ejecutaba en cola, uno tras otro, sin interrupciones. Esto permitía aprovechar al máximo la CPU y reducir tiempos muertos, aunque la experiencia del usuario era poco flexible. Hoy en día, la filosofía “batch” sigue presente en procesos automatizados como tareas programadas o scripts de servidores.


Interactivos (Tiempo compartido)

Aparecieron como evolución de los sistemas batch, permitiendo que varios usuarios trabajasen con el ordenador al mismo tiempo a través de terminales. La CPU se compartía en intervalos cortos, dando la impresión de que cada usuario tenía su propio sistema. Esta modalidad hizo posible el trabajo colaborativo y sentó las bases de sistemas multiusuario modernos. Un ejemplo pionero fue Multics, seguido por las primeras versiones de UNIX.


Sistemas de Tiempo Real (RTOS)

Un sistema operativo de tiempo real está diseñado para dar respuestas en tiempos estrictos y garantizados, incluso en condiciones de alta carga. Esto es vital en sistemas críticos: por ejemplo, un controlador aéreo no puede retrasarse en dar órdenes, o un airbag debe desplegarse en milisegundos. Se diferencian entre tiempo real estricto (la respuesta debe ser siempre dentro del plazo) y tiempo real flexible (puede haber pequeños retrasos tolerables). Ejemplos son VxWorks, QNX o FreeRTOS.


Sistemas Distribuidos

Un sistema distribuido hace que un conjunto de ordenadores se comporte como si fuera un único sistema. La idea es ocultar al usuario que existen múltiples máquinas: el acceso a recursos, ficheros y procesos es transparente. Esto permite escalabilidad (añadir más nodos fácilmente) y tolerancia a fallos (si un nodo cae, otros siguen trabajando). Ejemplos académicos e históricos son Amoeba y Plan 9, y hoy el concepto está en la base de tecnologías de clústeres y nubes modernas.


Sistemas Embebidos

Son sistemas operativos reducidos y especializados, diseñados para funcionar en dispositivos con recursos muy limitados y para cumplir una función concreta. A diferencia de un sistema de propósito general, un embebido suele estar integrado en el propio hardware (como un router, un microcontrolador en un coche o un electrodoméstico). Son altamente eficientes y estables, y su diseño suele priorizar bajo consumo de energía y respuesta rápida. Ejemplos modernos son FreeRTOS, Zephyr o versiones simplificadas de Linux embebido.


Sistemas de Red

Nacieron para gestionar de forma eficiente recursos compartidos en una red local: impresoras, discos, usuarios. El sistema operativo se encarga de la seguridad en el acceso, la autenticación y la gestión de protocolos de comunicación. Un ejemplo clásico es Novell NetWare, y hoy en día muchos servidores con Linux o Windows Server funcionan principalmente como sistemas de red, proporcionando servicios de autenticación (LDAP, Active Directory), compartición de archivos (Samba, NFS) y correo electrónico.


Sistemas Móviles

Estos sistemas están diseñados específicamente para smartphones y tablets. Se centran en tres pilares: interfaz táctil intuitiva, eficiencia energética y seguridad. Además, gestionan sensores (GPS, cámara, acelerómetro) y redes móviles. Ejemplos son Android e iOS, que han redefinido la computación personal llevándola al bolsillo del usuario.


Sistemas Mainframe

Los mainframes son grandes ordenadores diseñados para procesar volúmenes masivos de datos de forma fiable. Sus sistemas operativos, como IBM z/OS, están pensados para ejecutar millones de transacciones por segundo con altísima disponibilidad (casi sin tiempos de caída). Son esenciales en banca, seguros, aerolíneas y grandes corporaciones, donde la fiabilidad y la escalabilidad son más importantes que la flexibilidad.


Sistemas de Propósito General

Son los sistemas operativos más comunes en PCs y portátiles: equilibran facilidad de uso, compatibilidad con hardware variado y capacidad multitarea. Permiten ejecutar desde aplicaciones de oficina hasta programas científicos o servidores de red. Ejemplos son Windows, Linux y macOS, que pueden adaptarse tanto al uso doméstico como al profesional.


Sistemas de Propósito Específico

A diferencia de los de propósito general, estos sistemas están diseñados para una tarea muy concreta, como controlar un robot, gestionar un PLC (controlador lógico programable) o un equipo médico. No necesitan versatilidad, sino máxima optimización y fiabilidad en su ámbito. Muchas veces están basados en sistemas de tiempo real o versiones reducidas de Linux.


Sistemas Virtualizados / Hipervisores

Un hipervisor es un tipo especial de sistema operativo (o parte de él) que permite ejecutar múltiples máquinas virtuales sobre un único hardware físico. Cada máquina virtual actúa como si fuera independiente, con su propio sistema operativo. Esto da flexibilidad, seguridad y aprovechamiento del hardware. Existen hipervisores tipo 1 (se ejecutan directamente sobre el hardware, como VMware ESXi, Hyper-V) y tipo 2 (se ejecutan sobre un SO anfitrión, como VirtualBox, VMware Workstation).


Sistemas en la Nube (Cloud OS)

Son sistemas diseñados para funcionar en infraestructuras distribuidas y escalables en centros de datos. En lugar de enfocarse en un ordenador físico, gestionan recursos de muchos servidores a la vez y permiten escalar aplicaciones dinámicamente. Se apoyan en la virtualización y los contenedores. Ejemplos son los sistemas basados en Kubernetes, OpenStack o propuestas como Google Fuchsia. Su objetivo es ofrecer servicios bajo demanda (SaaS, PaaS, IaaS).