LU1 Intro to DS Flashcards
What is a distributed system?
A collection of independent computers that appear to users as a single cohesive system.
How do distributed systems achieve a unified appearance to users?
Through middleware that abstracts the complexity of multiple machines.
What are examples of distributed systems?
Compute clusters (e.g., CERN), distributed storage (NFS, Dropbox), the Web, peer-to-peer systems (Tor, Torrent).
What is concurrency in distributed systems?
The simultaneous execution of multiple programs, allowing shared resources to be accessed by different processes at the same time.
What is the primary purpose of distributed systems?
To share resources and information, and enable explicit communication between machines or people.
What are the advantages of distributed systems?
Resource sharing, scalability, performance improvements, and increased reliability.
Why is there no global clock in distributed systems?
Because coordinating actions across independent computers relies on message passing, which cannot achieve perfect synchronization.
What are independent failures in distributed systems?
Failures that occur in individual components (hardware, software, network) without affecting the entire system.
What is resource sharing in distributed systems?
The ability to share hardware (e.g., printers), data (e.g., files), and services (e.g., search engines) across multiple users.
What is middleware in distributed systems?
Software layers that provide a programming abstraction and mask the heterogeneity of networks, hardware, OS, and programming languages.
What is heterogeneity in distributed systems?
The diversity in networks, hardware, operating systems, and programming languages within a distributed system.
What is transparency in distributed systems?
The ability to hide the complexity of the distributed system from users and programmers, making it appear as a single system.
What are the types of transparency in distributed systems?
Access, location, migration, relocation, replication, concurrency, and failure transparency.
What is access transparency?
Hides differences in data representation and how resources are accessed.
What is location transparency?
Hides the physical location of resources from users and applications.
What is migration transparency?
Hides the ability of the system to move objects or processes between locations.
What is replication transparency?
Hides the fact that resources or data may be replicated across multiple locations.
What is concurrency transparency?
Hides the coordination of activities between processes to maintain consistency.
What is failure transparency?
Hides the occurrence and recovery from failures in the system.
What is openness in distributed systems?
The ability to extend and improve the system by integrating new components with existing ones.
What is security in distributed systems?
Protecting data, resources, and communications from unauthorized access and ensuring authentication and privacy.
What are common security challenges in distributed systems?
Denial of service attacks, securing mobile code, and ensuring data confidentiality.
What is scalability in distributed systems?
The ability of a system to handle growth in users, resources, and geographical distribution without performance degradation.
What are the three dimensions of scalability?
Size, geography, and administration.