Los sistemas operativos están ahí desde la primera generación de ordenadores y siguen evolucionando con el tiempo. En este capítulo, hablaremos de algunos de los tipos importantes de sistemas operativos más utilizados.
Sistema operativo por lotes
Los usuarios de un sistema operativo por lotes no interactúan con el ordenador directamente. Cada usuario prepara su trabajo en un dispositivo fuera de línea, como las tarjetas perforadas, y lo envía al operador del ordenador. Para acelerar el procesamiento, los trabajos con necesidades similares se agrupan y se ejecutan como un grupo. Los programadores dejan sus programas al operador y éste clasifica los programas con necesidades similares en lotes.
Los problemas de los sistemas por lotes son los siguientes –
- Falta de interacción entre el usuario y el trabajo. La CPU suele estar inactiva, porque la velocidad de los dispositivos mecánicos de E/S es más lenta que la de la CPU. Dificultad para proporcionar la prioridad deseada.
Sistemas operativos de tiempo compartido
El tiempo compartido es una técnica que permite que muchas personas, situadas en varios terminales, utilicen un determinado sistema informático al mismo tiempo. El tiempo compartido o multitarea es una extensión lógica de la multiprogramación. El tiempo del procesador que se comparte entre varios usuarios simultáneamente se denomina tiempo compartido.
La principal diferencia entre los sistemas multiprogramados por lotes y los sistemas de tiempo compartido es que en el caso de los sistemas multiprogramados por lotes, el objetivo es maximizar el uso del procesador, mientras que en los sistemas de tiempo compartido, el objetivo es minimizar el tiempo de respuesta.
La CPU ejecuta múltiples trabajos cambiando entre ellos, pero los cambios se producen con mucha frecuencia. Así, el usuario puede recibir una respuesta inmediata. Por ejemplo, en un procesamiento de transacciones, el procesador ejecuta cada programa de usuario en una breve ráfaga o quantum de cómputo. Es decir, si hay n usuarios, cada uno puede recibir un quantum de tiempo. Cuando el usuario envía el comando, el tiempo de respuesta es de unos pocos segundos como máximo.
El sistema operativo utiliza la programación de la CPU y la multiprogramación para proporcionar a cada usuario una pequeña porción de tiempo. Los sistemas informáticos que se diseñaron principalmente como sistemas por lotes se han modificado a sistemas de tiempo compartido.
Las ventajas de los sistemas operativos de tiempo compartido son las siguientes –
- Proporciona la ventaja de una respuesta rápida.
- Evita la duplicación de software.
- Reduce el tiempo de inactividad de la CPU.
Las desventajas de los sistemas operativos de tiempo compartido son las siguientes –
- Problema de fiabilidad.
Cuestión de seguridad e integridad de los programas y datos del usuario. Problema de comunicación de datos.
Sistema operativo distribuido
Los sistemas distribuidos utilizan múltiples procesadores centrales para servir a múltiples aplicaciones en tiempo real y a múltiples usuarios. Los trabajos de procesamiento de datos se distribuyen entre los procesadores en consecuencia.
Los procesadores se comunican entre sí a través de varias líneas de comunicación (como buses de alta velocidad o líneas telefónicas). Estos sistemas se denominan sistemas poco acoplados o sistemas distribuidos. Los procesadores de un sistema distribuido pueden variar en tamaño y función. Estos procesadores se denominan sitios, nodos, ordenadores, etc.
Las ventajas de los sistemas distribuidos son las siguientes –
- Con la facilidad de compartir recursos, un usuario en un sitio puede ser capaz de utilizar los recursos disponibles en otro.
- Si un sitio falla en un sistema distribuido, los sitios restantes pueden potencialmente seguir funcionando.
Acelerar el intercambio de datos entre sí a través del correo electrónico.
Mejor servicio a los clientes. Reducción de la carga en el ordenador central. Reducción de los retrasos en el procesamiento de datos.
Sistema operativo de red
Un sistema operativo de red se ejecuta en un servidor y proporciona al servidor la capacidad de gestionar datos, usuarios, grupos, seguridad, aplicaciones y otras funciones de red. El objetivo principal del sistema operativo de red es permitir el acceso compartido a archivos e impresoras entre varios ordenadores de una red, normalmente una red de área local (LAN), una red privada o a otras redes.
Ejemplos de sistemas operativos de red son Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare y BSD.
Las ventajas de los sistemas operativos de red son las siguientes –
- Los servidores centralizados son muy estables.
La seguridad está gestionada por el servidor. Las actualizaciones a nuevas tecnologías y hardware pueden integrarse fácilmente en el sistema. El acceso remoto a los servidores es posible desde diferentes ubicaciones y tipos de sistemas.
Las desventajas de los sistemas operativos de red son las siguientes –
- Alto coste de compra y funcionamiento de un servidor.
Dependencia de una ubicación central para la mayoría de las operaciones. Se requiere mantenimiento y actualizaciones periódicas.
Sistema operativo en tiempo real
Un sistema en tiempo real se define como un sistema de procesamiento de datos en el que el intervalo de tiempo requerido para procesar y responder a las entradas es tan pequeño que controla el entorno. El tiempo que tarda el sistema en responder a una entrada y mostrar la información actualizada requerida se denomina tiempo de respuesta. Por lo tanto, en este método, el tiempo de respuesta es muy menor en comparación con el procesamiento en línea.
Los sistemas en tiempo real se utilizan cuando hay requisitos de tiempo rígidos en el funcionamiento de un procesador o el flujo de datos y los sistemas en tiempo real pueden ser utilizados como un dispositivo de control en una aplicación dedicada. Un sistema operativo en tiempo real debe tener restricciones de tiempo fijas y bien definidas, de lo contrario el sistema fallará. Por ejemplo, los experimentos científicos, los sistemas de imágenes médicas, los sistemas de control industrial, los sistemas de armas, los robots, los sistemas de control del tráfico aéreo, etc.
Hay dos tipos de sistemas operativos en tiempo real.
Sistemas de tiempo real duro
Los sistemas de tiempo real duro garantizan que las tareas críticas se completen a tiempo. En los sistemas de tiempo real duro, el almacenamiento secundario es limitado o no existe y los datos se almacenan en la ROM. En estos sistemas, la memoria virtual casi nunca se encuentra.
Los sistemas de tiempo real suave
Los sistemas de tiempo real suave son menos restrictivos. Una tarea crítica en tiempo real tiene prioridad sobre otras tareas y conserva la prioridad hasta que se completa. Los sistemas de tiempo real suave tienen una utilidad limitada que los sistemas de tiempo real duro. Por ejemplo, multimedia, realidad virtual, proyectos científicos avanzados como la exploración submarina y los rovers planetarios, etc.