Un sistema operativo (SO) de computadora es uno de los aspectos más importantes de una computadora. Es responsable de la gestión de tareas subyacentes y la orquestación de los programas de la computadora. Un sistema operativo distribuido es un sistema que distribuye la carga entre varios servidores de hardware informático. Este tipo de sistema operativo proporciona un mejor rendimiento y disponibilidad porque se distribuye en varios componentes.
La mayoría de los sistemas operativos están disponibles en versiones distribuidas. Algunos ejemplos incluyen UNIX®, Linux® y el sistema operativo Windows®. Cuando el sistema operativo se distribuye, debe instalarse en varios servidores, lo que requiere procesos especiales de configuración y gestión. Por lo general, esto requiere que los ingenieros de sistemas administren el proyecto.
Un sistema operativo distribuido se configura como un grupo de servidores que comparten memoria y tareas. Estos servidores actúan al unísono y proporcionan más potencia que un solo servidor de computadora grande. Normalmente, esto genera un mejor rendimiento porque la carga se distribuye entre varios servidores.
La computación en cuadrícula es un buen ejemplo de computación distribuida. Este sistema utiliza computadoras conectadas a Internet para completar tareas complejas que requieren una gran potencia de procesamiento. El uso de un modelo distribuido hace uso de la capacidad inactiva de la computadora porque comparte varios servidores.
La capacidad de la computadora se conoce como la máxima potencia de procesamiento disponible de un sistema informático. Por lo general, se calcula en función de la memoria disponible y las unidades de procesamiento informático de la plataforma de hardware. Un sistema distribuido proporciona capacidad adicional porque incluye varios servidores.
Hay algoritmos específicos que se utilizan para que un sistema operativo distribuido maneje la administración de tareas. Esta disposición está diseñada para procesar tareas individuales en varios servidores según la prioridad y el tiempo de procesamiento esperado. Estos algoritmos varían en complejidad, pero están diseñados para aprovechar al máximo la potencia de procesamiento disponible de los servidores compartidos.
Un algoritmo por turnos es un ejemplo de un algoritmo simple que se utiliza en un sistema operativo distribuido. Esta técnica distribuye las tareas informáticas entrantes a varios servidores basándose en un algoritmo de conteo simple. A cada tarea se le asigna un número específico que corresponde a un servidor específico dentro de la cadena de servidores disponibles.
Algunos modelos de sistemas operativos distribuidos monitorean la capacidad disponible de cada servidor dentro de la cadena. Por lo general, esto proporciona un mejor rendimiento que las técnicas simples de operación por turnos porque la carga del servidor se basa en la potencia de procesamiento real disponible. Los algoritmos avanzados son más comunes en sofisticados sistemas operativos de multiprocesamiento.