Final Exam Practice Flashcards
Distributed Computing: Explain what is meant by location transparency. List three other different types of distribution transparency
Location Transparency: When using a DS, you don’t know what server you are connected to etc. Other transparencies: Access, concurrency and replication
Distributed Computing: What does openness mean for distributed system? How do you define a portable distributed system?
This is the extent by which to implementations of systems or components can coexist and work together. Portability: So when we actually have two different systems, for example A and B and they use the same interface, can I switch them out? And the distributed system will continue working
Distributed Computing: Suppose a process in a distributed system runs on one node and accesses data from another node. After some time, for load balancing purposes, this process relocates to a different node. What kind of transparencies should be provided for this process in a distributed system? Explain your answers.
Migration, relocation transparencies
Communication: What are the main issues to consider in passing parameters in RPC?
Need to do parameter marshalling. Client and server could be different OSs and need to package data correctly.
Fault Tolerance: Describe how redundancy can be useful to mask failures in a distributed system. (2 marks)
Redundancy can be useful
Synchronisation: What are the benefits of logical clocks over physical clocks?
No physically synchronous global clock, so logical clocks provide a global ordering in DS.
Messaging: Do messaging systems such as IBM WebSphere MQ provide transient and synchronous communication? Explain your answer. (2 marks)
INSERT ANSWER
Communication: Compare and contrast the iterative and recursive approaches used by DNS for resolving URLs. (5 marks)
In recursive, the client only sends query to 1st server then server will send request to next server until query is resolved. In iterative client is responsible for sending query to different servers until query is resolved.
Processes: Describe two examples of applications for which their client processes would benefit from multi-threading. Explain.
Better CPU utilization.
Processes: What are the two approaches to implementing a thread package?
There are basically two approaches to implement a thread package. The first approach is to construct a thread library that is executed entirely in user mode. The second approach is to have the kernel be aware of threads and schedule them
Synchronisation: Given reasons why thread synchronization is important to support a functional multi-thread process.
INSERT ANSWER
Fault Tolerance: Consider Byzantine failures. To achieve agreement in a distributed system that tolerates k faulty processes, what is the required replication of resources? Explain your answer. (4 marks)
INSERT ANSWER

INSERT ANSWER
Synchronisation

INSERT ANSWER HERE
Assume a DS with 4 machines. Their internal clocks are supposed to tick 1000 times per msec. One machine perfectly performs that while the second one only ticks 995 times per msec, the third one does 1002 ticks per msec and the fourth one does 1004 ticks per msec. If we have UTC updates come every 20 seconds, what is the maximum clock skew that will occur? (5 marks)
INSERT ANSWER HERE
Pervasive Computing: What is the role of the Fusion Layer in processing sensed context information? (4 marks)
INSERT ANSWER
Pervasive Computing: Describe different types of adaptation that can be applied at the application layer. (6 marks)
INSERT ANSWER HERE
a) A consistency model uses a small number of locks. Each lock protects updates to a different variable. i. What kind of consistency model is this? Explain. (3 marks)
INSERT ANSWER HERE
A consistency model uses a small number of locks. Each lock protects updates to a different variable.
ii. Describe pros and cons for protecting each variable separately. (3 marks)
INSERT ANSWER HERE
What kind of consistency is provided for replicated databases if all operation requests are delivered by totally ordered multicast? Explain your answer. (4 marks)
INSERT ANSWER HERE

INSERT ANSWER HERE

INSERT ANSWER HERE
Distributed Computing: Explain what is meant by access transparency. List three other different types of distribution transparency. (5 marks)
INSERT ANSWER HERE
Distributed Computing: What does scalability mean for distributed system? Scalability can be achieved applying different techniques. What are these techniques? (5 marks)
INSERT ANSWER HERE
Communication: (a) Describe the role of the middleware layer as part of the conventional Open Systems Interconnection Reference Model (OSI). (4 marks)
INSERT ANSWER HERE
Communication: What are the differences between persistent communication and transient communication? Give an example for persistent communication and transient communication (4 marks)
INSERT ANSWER HERE
Describe a communication paradigm that can help you to achieve highly asynchronous communication. (4 marks)
INSERT ANSWER HERE
Naming: Explain the differences between structured naming and attribute-based naming. Give one example for each of the naming schemes. (6 marks)
INSERT ANSWER HERE
Naming: Describe the Hierarchical Approach for resolving Flat names (4 marks)
INSERT ANSWER HERE
Fault Tolerance: (a) Explain the concept of Distributed Commit. (2 marks)
INSERT ANSWER HERE
To achieve agreement in a distributed system with k faulty processes, what is the required replication of resources? Explain your answer. (4 marks)
INSERT ANSWER HERE

INSERT ANSWER HERE
Synchronisation: Define a totally ordered multicast operation. Explain why in totally ordered multicasting every message has to be acknowledged. (5 marks)
INSERT ANSWER HERE

INSERT ANSWER HERE
Synchronisation: Assume a DS with 4 machines. Their internal clocks are supposed to tick 1000 times per msec. One machine perfectly performs that while the second one only ticks 995 times per msec, the third one does 1002 ticks per msec and the fourth one does 1004 ticks per msec. If we have UTC updates come every 20 seconds, what is the maximum clock skew that will occur? (5 marks)
INSERT ANSWER HERE

INSERT ANSWER HERE
Pervasive Systems: Address the following issue related to pervasive systems: (a) How would you design the context repository (context data store) to support fault tolerance of context-aware systems? Explain your answer. (6 marks)
INSERT ANSWER HERE
Consistency: In your own words, explain why and how consistency matters in developing distributed systems. (4 marks)
INSERT HERE
Consider an application for mobile users that requires the monotonic-read consistency. Would you use the Gifford’s scheme based protocol or the primarybackup-local-write protocol? Explain why. (5 marks)
INSERT ANSWER HERE
Consider the Gifford’s scheme in a system with N replications and NR read quorum, NW write quorum i. What are the conditions on N, NR, and NW in order to sustain consistency (2 marks) ii. What is the significance of NR=1? (2 marks)
INSERT ANSWER HERE

INSERT ANSWER HERE

INSERT ANSWER HERE
Distributed Systems: (a) Describe the role of the middleware in Distributed Systems. (3 marks)
INSERT ANSWER HERE
If a distributed system needs to grow to support many more users worldwide, which kinds of scalability does it need to achieve? (3 marks)
Insert answer here
What does openness means for distributed system? Indicate the core component to achieve openness for distributed systems. (4 marks)
Insert answer here
Describe a method to hide network latency when a client and a server are placed far apart. Give an example. (4 marks)
insert answer here
Compare and contrast RPC and RMI. (4 marks)
What are the main issue to consider in passing parameters in RPC? (3 marks)
Insert answer here
Naming: Explain the differences between flat naming and structured naming. Give one example for each of the naming schemes. (6 marks)
insert answer here
Naming: Pick out a flat naming resolving scheme and explain how it works. (3 marks)
insert answer here

insert answer here
fault tolerance: Explain why Byzantine failures require more replicated resources to deal with, compared to silent failures. (3 marks)
insert answer here

insert answer here
Synchronisation: Assume a DS with 4 machines. Their internal clocks are supposed to tick 1000 times per msec. One machine perfectly performs that while the second one only ticks 998 times per msec, the third one does 1004 ticks per msec and the fourth one does 1007 ticks per msec. If we have UTC updates come every 30 seconds, what is the maximum clock skew that will occur? (5 marks)
Insert answer here

insert answer here
What is the role of Interface Definition Languages (IDL) in distributed computing? Indicate when in the software development process, IDL and its components must be implemented. (5 marks)
insert answer here
Distributed Systems: ) Explain the difficulties in achieving interoperability for distributed systems (i.e. the difficulties in developing distributed applications where application components (objects) would be placed on various distributed computing middleware, hardware, OS environments etc.). (5 marks)
Insert Answer here
Should the client and server-side CORBA objects for asynchronous method invocation be persistent? Explain your answer. (4 marks)
Insert answer here
A file is replicated on 5 servers.
i. List all the combinations of read and write quorums permitted by Gifford’s scheme. (2 marks)
ii. Do all of these combinations make sense? (1 mark)
iii. What is the significance of a read quorum of 1? (2 marks)
insert answer here

insert answer here

insert answer here

insert answer here