Un sistema distribuido consiste en una colección de computadoras conectadas por una red y coordinadas por software específico para que los usuarios perciban el sistema como una entidad única.
Un sistema distribuido se define como una colección de computadores conectados por una red, y con el software distribuido adecuado para que el sistema sea visto por los usuarios como una única entidad capaz de proporcionar facilidades de computación.
Transparencia
sin importar la posición del usuario, este mecanismo permite trabajar a todos los usuarios como si se tratara de un equipo único.
La transparencia de un sistema distribuido va en conjunto con que todo el sistema funcione de forma similar en todos los puntos de red,
Tolerancia a fallos
Los sistemas informáticos a veces fallan.
El diseño de sistemas tolerantes a fallos se basa en dos cuestiones, complementarias entre sí: Redundancia hardware y recuperación del software.
Cuando se producen fallos en el software o en el hardware, los programas podrían producir resultados incorrectos o podrían pararse antes de terminar el proceso que estaban realizando.
Escalabilidad
Los sistemas distribuidos operan de manera efectiva y eficiente a muchas escalas diferentes.
Es un objetivo primordial diseñar software de sistema distribuido que seguirá siendo eficiente y útil con esas nuevas configuraciones de la red.
La escala más pequeña consiste en dos estaciones de trabajo y un servidor de fichero, cuando el tamaño y complejidad de las redes de ordenadores crece
Concurrencia
Cuando existen varios procesos en una única maquina decimos que se están ejecutando concurrentemente.
Si el ordenador está equipado con un único procesador central, la concurrencia tiene lugar entrelazando la ejecución de los distintos procesos.
Aperturas
Un sistema puede ser abierto o cerrado con respecto a extensiones hardware o con respecto a las extensiones software.
La apertura de los sistemas distribuidos se determina principalmente por el grado hacia el que nuevos servicios de compartición de recursos se pueden añadir sin perjudicar ni duplicar a los ya existentes.
Compartir Recursos
Debe ser manejada por un programa que ofrezca un interfaz de comunicación permitiendo que el recurso sea accedido, manipulado y actualizado de una manera fiable y consistente, este programa es el gestor de recursos
Los recursos en un sistema distribuido están físicamente encapsulados en una de las computadoras y sólo pueden ser accedidos por otras computadoras mediante la red.