Sistema Operativo (SO)
Cada día son millones y millones de personas los que encienden su ordenador del trabajo o de casa para trabajar, navegar por Internet o realizar todo tipo de tareas. En este caso, la mayoría de usuarios únicamente se preocupan de si el ordenador va más o menos rápido, si se quedan sin espacio en disco, pueden comprar un monitor de mayor calidad o ampliar la memoria RAM para que todo vaya más fluido. Sin embargo, hay un elemento clave para el funcionamiento de nuestro equipo, y ese es el sistema operativo.
Ahora bien, ¿Qué es un sistema operativo? ¿Qué tipo de sistemas operativos existen?. Esas preguntas serán resueltas en este espacio.
¿Qué es un sistema operativo?
Un sistema operativo es el software que maneja el hardware. Comprende un conjunto de programas que controla el funcionamiento del componente físico, facilitando al usuario el uso de la computadora u otro equipo.
El sistema operativo administra los recursos ofrecidos por el hardware y actúa como un intermediario entre la computadora y su usuario. Además, proporciona un ambiente en donde el usuario pueda ejecutar programas en una forma conveniente y eficiente.
Los programas de aplicación hacen uso del sistema operativo al realizar solicitudes de servicios a través de una interfaz de programa de aplicación (API), definida. Además, los usuarios pueden interactuar directamente con el sistema operativo a través de una interfaz de usuario, como una interfaz de línea de comandos (CLI) o una interfaz de usuario gráfica (GUI).
|
| Sistema Operativo Windows 10 |
Una vez instalado, el sistema operativo se basa en una amplia biblioteca de controladores de dispositivos para adaptar los servicios del sistema operativo al entorno de hardware específico. Por lo tanto, cada aplicación puede realizar una llamada común a un dispositivo de almacenamiento, pero el sistema operativo recibe esa llamada y usa el controlador correspondiente para traducir la llamada en acciones (comandos) necesarios para el hardware subyacente en esa computadora específica.
Hoy en día, el sistema operativo proporciona una plataforma integral que identifica, configura y administra una variedad de hardware, incluidos los procesadores; dispositivos de memoria y gestión de memoria; conjuntos de chips; almacenamiento; redes; comunicación de puertos, como Video Graphics Array (VGA), High-Definition Multimedia Interface (HDMI) y Universal Serial Bus (USB); e interfaces de subsistema, como Peripheral Component InterConnect Express (PCIe).
Tipos de sistemas operativos
Monousuario
Los sistemas operativos monousuarios son aquéllos que soportan a un usuario a la vez, sin importar el número de procesadores que tenga la computadora o el número de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Es un sistema en el cual el tipo de usuario no está definido y, por lo tanto, los datos que tiene el sistema son accesibles para cualquiera que pueda conectarse significa que el sistema no distingue a distintos usuarios con distintos privilegios.
Todos los usuarios de la computadora pueden realizar las mismas tareas y controlar todos los recursos: instalar, borrar, crear, etc. No existe un administrador del sistema que tenga todos los privilegios y que se diferencie de los usuarios habituales.
La seguridad es muy escasa porque cualquier usuario (de forma intencionada o no) puede destruir datos y hasta el propio sistema. Este es el caso de los sistemas operativos más antiguos como MS-DOS y algunos más recientes como la serie Windows 95/98/Me de Microsoft o MacOS (antes de MacOS X) de Macintosh.
En estos sistemas no existe una diferenciación clara entre las tareas que realiza un administrador del sistema y las tareas que realizan los usuarios habituales, no disponiendo del concepto de multiusuario, un usuario común tiene acceso a todas las capacidades del sistema, pudiendo borrar, incluso, información vital para su funcionamiento.
Un usuario malicioso (remoto o no) que obtenga acceso al sistema podrá realizar todo lo que desee por no existir dichas limitaciones. Estos son algunos de los sistemas operativos que soportan un solo usuario por vez:
-
MS-DOS.
-
AmigaOS.
-
Classic Mac OS.
-
Windows 1.0.
-
Windows 2.0.
-
Windows 3.0.
-
Windows 3.1x.
-
Windows 95.
-
Windows 98.
- Windows ME.
Multiusuarios
Los sistemas operativos multiusuarios son capaces de dar servicio a
más de un usuario a la vez, ya sea por medio de varias terminales
conectadas a la computadora o por medio de sesiones remotas en una red
de comunicaciones. No importa el número de procesadores en la máquina
ni el número de procesos que cada usuario puede ejecutar
simultáneamente. Ejemplos de sistemas operativos con característica de multiusuario son VMS y Unix, así como sus múltiples derivaciones (e.g. IRIX, Solaris, etc.) y los sistemas tipo Unix como Linux, FreeBSD y Mac OS X.
En la familia de los sistemas operativos Microsoft Windows, desde Windows 95 hasta la versión Windows 2000, proveen soporte
para ambientes personalizados por usuario, pero no admiten la
ejecución de múltiples sesiones de usuario mediante el entorno
gráfico.
Las versiones de Windows 2000 server y Windows 2003 server ofrecen el
servicio Terminal Server el cual permite la ejecución remota de diferentes sesiones de
usuario. Estos son diferentes sistemas operativos con característica
de multiusuarios:
-
·
Mac OS X
-
·
Linux
-
·
FreeBSD
-
·
NetBSD
-
·
OpenBSD
-
·
Solaris
-
·
Plan 9
-
·
QNX
-
·
BeOS
-
·
GNU HURD
-
·
AIX
-
·
VMS
-
·
HP-UX
-
·
IRIX
-
·
Tru64
-
·
VxWorks
Monotareas
Los sistemas monotarea son aquellos que sólo permiten una tarea a la
vez por usuario. Puede darse el caso de un sistema multiusuario y
monotarea, en el cual se admiten varios usuarios al mismo tiempo, pero
cada uno de ellos puede estar haciendo solo una tarea a la vez. Claro
ejemplo de sistema operativo monotarea es el MS-DOS.
Multitareas
Un sistema operativo multitarea es aquél que le permite al usuario
estar realizando varias labores al mismo tiempo. Por ejemplo, puede
estar editando el código fuente de un programa durante su depuración
mientras compila otro programa, a la vez que está recibiendo correo
electrónico en un proceso en background. Es común encontrar en ellos
interfaces gráficas orientadas al uso de menús y el ratón, lo cual
permite un rápido intercambio entre las tareas para el usuario,
mejorando su productividad.
· Tipos de sistemas operativos multitarea
Entre los sistemas operativos multitarea, podemos encontrar la
siguiente clasificación:
Cooperativa: Los procesos de usuario son quienes ceden la CPU al
sistema operativo a intervalos regulares. Muy problemática, puesto que,
si el proceso de usuario se cuelga y no cede la CPU al sistema
operativo, todo el sistema quedará entonces colgado. Da lugar también a
latencias muy irregulares, y la imposibilidad de tener en cuenta este
esquema en sistemas operativos de tiempo real. Un ejemplo seria Windows,
hasta la versión 3.11.
· Preceptiva: El sistema operativo es el encargado de
administrar el/los procesadores, repartiendo el tiempo de uso de este
entre los procesos que estén esperando para utilizarlo. Cada proceso
utiliza el procesador durante cortos periodos de tiempo, pero el
resultado final es prácticamente igual que si estuviesen ejecutándose al
mismo tiempo. Ejemplos de sistemas de este tipo serian Unix y clones
(FreeBSD, Linux, etc.), VMS y derivados, AmigaOS, etc.
· Real: Solo se da en sistemas multiprocesador. Es aquella en la
que varios procesos se ejecutan realmente al mismo tiempo, en distintos
microprocesadores. Suele ser también preceptiva. Ejemplos de sistemas
operativos con esa capacidad: Linux y OS X
Uniproceso
En el sistema monoprocesador o uniprocesador existe una sola unidad de
procesamiento central (CPU) capaz de ejecutar una serie de instrucciones
de índole general. Un sistema operativo uniproceso es aquél que es capaz
de manejar solamente un procesador de la computadora. El ejemplo más
típico de este tipo de sistemas es el DOS y MacOS.
Multiproceso
Un sistema operativo multiproceso se refiere al número de procesadores
del sistema, que es más de uno y éste es capaz de usarlos todos para
distribuir su carga de trabajo. También llamados sistemas paralelos o estrechamente acoplados, los
sistemas multiprocesadores tienen dos o más CPU que comparten buses y a
veces el reloj, la memoria y los dispositivos periféricos. Los hay de
dos tipos simétrica o asimétricamente:
-
multiprocesador asimétrico: cada procesador tiene una tarea
específica.
-
multiprocesador simétrico: todos los procesadores realizan las mismas
tareas.
Cuando se trabaja de manera asimétrica, el sistema operativo selecciona a uno de los procesadores el cual jugará el papel de procesador maestro y servirá como pivote para distribuir la carga a los demás procesadores, que reciben el nombre de esclavos. Cuando se trabaja de manera simétrica, los procesos o partes de ellos (threads) son enviados indistintamente a cualquiera de los procesadores disponibles, teniendo, teóricamente, una mejor distribución y equilibrio en la carga de trabajo bajo este esquema. Un aspecto importante que considerar en estos sistemas es la forma de crear aplicaciones para aprovechar los varios procesadores.
En tiempo real
Un sistema operativo de tiempo real es aquel que ha sido desarrollado
para aplicaciones de tiempo real. Como tal, se le exige corrección en
sus respuestas bajo ciertas restricciones de tiempo.
Un sistema operativo en tiempo real (RTOS), es un sistema operativo
ligero que se utiliza para facilitar la multitarea y la integración de
tareas en diseños con recursos y tiempo limitados, como suele ocurrir en
los sistemas integrados. Además, el término "tiempo real" indica
previsibilidad/determinismo en el tiempo de ejecución más que velocidad
bruta, por lo que normalmente se puede demostrar que un RTOS satisface
los requisitos de tiempo real duro debido a su determinismo.
De red
Un sistema operativo de red (NOS) es un sistema operativo de
computadora (OS) que está diseñado principalmente para soportar
estaciones de trabajo, computadoras personales y, en algunos casos,
terminales antiguos que están conectados en una red de área local (LAN). El software que hay detrás de un NOS permite que varios dispositivos
de una red se comuniquen y compartan recursos entre sí.
La composición de hardware que suele utilizar un NOS incluye varias
computadoras personales, una impresora, un servidor y un servidor de
archivos con una red local que los conecta entre sí. La función del NOS
es entonces proporcionar servicios y características básicas de red que
soporten múltiples solicitudes de entrada simultáneamente en un entorno
multiusuario.
Debido a que las versiones anteriores de los sistemas operativos
básicos no estaban diseñadas para su uso en red, los sistemas operativos
en red surgieron como una solución para las computadoras de un solo
usuario.
Tipos de sistemas operativos en red
Existen dos tipos básicos de sistemas operativos en red, él
NOS peer-to-peer y él NOS cliente/servidor:
- Los sistemas operativos de red peer-to-peer permiten a los usuarios compartir recursos de red guardados en una ubicación de red común y accesible. En esta arquitectura, todos los dispositivos son tratados por igual en términos de funcionalidad. Peer-to-peer suele funcionar mejor en redes LAN pequeñas y medianas y es más barato de configurar.
- Los sistemas operativos de red cliente/servidor proporcionan a los usuarios acceso a los recursos a través de un servidor. En esta arquitectura, todas las funciones y aplicaciones están unificadas bajo un servidor de archivos que puede utilizarse para ejecutar acciones individuales de los clientes, independientemente de su ubicación física. El modelo cliente/servidor suele ser el más caro de implementar y requiere una gran cantidad de mantenimiento técnico. Una ventaja del modelo cliente/servidor es que la red se controla de forma centralizada, lo que facilita la incorporación de cambios o adiciones a la tecnología.
