Por la Forma en que Ofrecen sus Servicios
Distribuido
Un sistema distribuido es una colección de procesadores conectados en red, la cual es imprescindible para su funcionamiento. Estos procesadores no comparten memoria entre sí, en lugar de eso, cada procesador tiene su propia memoria local. Desde el punto de vista de un procesador especifico en un sistema distribuido, el resto de los procesadores y sus respectivos recursos son remotos, mientras que sus propios recursos son locales. Estos sistemas proveen al usuario de recursos compartidos que mantiene el sistema. Por lo que brindan una mayor velocidad computacional, accesibilidad de los datos y fiabilidad.
Existen cuatro razones que justifican la existencia de estos sistemas:
Compartir recursos
Los usuarios de un host (servidor que provee servicios a otras computadoras) pueden disponer de los recursos del demás host. En general se ofrecen mecanismos para compartir archivos remotos, procesar información en sistemas de bases de datos distribuidos, imprimir archivos en host remotos, usar equipos de hardware especializados, etc.
Aumentar la velocidad
Si un determinado problema se puede dividir en subproblemas de manera que diferentes procesadores se encarguen de cada una de las partes queda claro que ese hecho hará que se obtenga una solución más rápidamente. Otro elemento para tomar en cuenta es que si un procesador específico está muy cargado se puede pasar su trabajo hacia otro que esta menos cargado, lo cual se denomina carga compartida, lo que, evidentemente, redundará en una mayor velocidad de respuesta.
Confiabilidad
Si un host de un sistema distribuido falla el resto de los hosts pueden continuar funcionando. Si el sistema está compuesto por una cantidad de instalaciones autónomas (por ejemplo, computadoras de propósito general) la falla de un host no afectará el resto, sin embargo, si el sistema está formado por pequeñas máquinas y cada una de ellas tiene alguna responsabilidad crucial, una simple falla afectará la operación. Para resolver esta situación debe tenerse suficiente redundancia de recursos (en hardware y datos).
La falla de un host debe detectarse por el sistema, el cual tendrá que tomar una acción adecuada para recuperarse de ella, entre las acciones está ver si existe la posibilidad de que otro host se encargue de la tarea de aquel que falló haciendo la oportuna transferencia de funciones.
Comunicación
Como los hosts están conectados entre sí, pueden intercambiar información. La información se puede transferir aun cuando los hosts están a distancias considerables.
Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
Características que identifican a los Sistemas Operativos Distribuidos
• Colección de sistemas autónomos capaces de comunicación y cooperación mediante interconexiones hardware y software.
• Gobierna operación de un Sistema Computacional y proporciona abstracción de máquina virtual a los usuarios.
• Su objetivo clave es la transparencia.
• Generalmente proporcionan medios para la compartición global de recursos.
• Servicios añadidos: denominación global, sistemas de archivos distribuidos, facilidades para distribución de cálculos (a través de comunicación de procesos internodos, llamadas a procedimientos remotos, etc.).