You are on page 1of 5

KABARAK UNIVERSITY

UNIVERSITY EXAMINATIONS

MAIN CAMPUS

FIRST SEMESTER 2020/2021 ACADEMIC YEAR

EXAMINATION FOR THE DEGREE OF BACHELOR OF BACHELOR OF


COMPUTER SCIENCE

INTE 312/COMP 322/COSF 326 DISTRIBUTED SYSTEMS

STREAM: Y3S1 TIME: 11:30-1:30PM

EXAMINATION SESSION: SEPT-DEC DATE: 05/02/2021

INSTRUCTIONS TO CANDIDATES
1. Answer Question 1 and any other two questions in the answer booklet provided.
2. Do not write on your question papers. All rough work should be done in your
answer booklet.
3. Clearly indicate which question you are answering.
4. Write neatly and legibly.
5. Edit your work for language and grammar errors.
6. Follow all the instructions in the answer booklet

SECTION A: (COMPULSORY) TOTAL MARKS FOR THIS SECTION IS 30 .


1.

As members of Kabarak University family, we purpose at all times and in all places, to set apart in one’s heart,
Jesus as Lord. (1 Peter 3:15)
Kabarak University is ISO 9001:2015 Certified
Page 1 of 5
a) Consider a distributed system consisting of four replicated servers. Each of the servers is
available at any instant with a probability of 95%. What is the overall system availability
If
i) the system is designed so that it can be operational if any of the four servers is
operational [3 Marks]
ii) the system is designed such that all four servers have to be available for the
entire system to be available [3 Marks]
b) Discuss why it is not always good idea to aim at implementing the highest degree of
distribution transparency possible? Provide an example [3 Marks]
c) Explain two differences between active standby and passive standby systems [4 Marks]
d) Assume you have been asked to design and implement a distributed system for video
processing, which requires high Quality-of-Service. Would you use TCP or UDP for your
middleware implementation? Justify your answer. [3 Marks]
e) Explain why it is sometimes so hard to hide the occurrence and recovery from failures in
a distributed system? [2 Marks]
f) Explain TWO reasons that would make it necessary to limit the number of threads in a
server process? [4 Marks]
g) Are there any circumstances in which a single-threaded server might be better than a
multithreaded server? Give an example. [3 Marks]
h) Explain the purpose of an Interface Definition Language? [2 Marks]
i) Explain why CORBA does not just use the Java interface construct? [3 Marks]

As members of Kabarak University family, we purpose at all times and in all places, to set apart in one’s heart,
Jesus as Lord. (1 Peter 3:15)
Kabarak University is ISO 9001:2015 Certified
Page 2 of 5
SECTION B. TOTAL MARKS FOR THIS SECTION IS 25.
ANSWER ANY TWO QUESTIONS FROM THIS SECTION. EACH QUESTION IN
THIS SECTION CARRIES 12.5 MARKS.

2.
a) Compare reading a file using a single-threaded file server and a multithreaded server. It
takes 15 msec to get a request for work, dispatch it, and do the rest of the necessary
processing, assuming that the data needed are in a cache in main memory. If a disk
operation is needed, as is the case one-third of the time, an additional 75 msec is required,
during which time the thread sleeps.

i) How many requests/sec can the server handle if it is single threaded? [3 Marks]
ii) How many requests/sec can the server handle If it is multithreaded? [3 Marks]

b) Explain why statically associating only a single thread with a lightweight process is not
such a good idea? [2 Marks]
c) Having only a single lightweight process per process is also not such a good idea. Why
not? [2 Marks]
d) Constructing a concurrent server by spawning a process has some advantages and
disadvantages compared to multithreaded servers. Mention a few. [5 Marks]
e)
i) What is a distributed architecture [3 Marks]
ii) Common object request broker (CORBA) is a middleware for distributed
architecture. Explain what a middleware is and provide other examples of Middle
ware technologies other than CORBA [2 Marks]
3.
a) Many networked systems are organized in terms of a back office and a front office. How
do organizations match with the coherent view we demand for a distributed system?
[3 Marks]
b) Is a server that maintains a TCP/IP connection to a client stateful or stateless? Explain
your answer [3 Marks]

As members of Kabarak University family, we purpose at all times and in all places, to set apart in one’s heart,
Jesus as Lord. (1 Peter 3:15)
Kabarak University is ISO 9001:2015 Certified
Page 3 of 5
c) Imagine a Web server that maintains a table in which client IP addresses are mapped to
the most recently accessed Web pages. When a client connects to the server, the server
looks up the client in its table, and if found, returns the registered page. Is this server
stateful or stateless? Explain your answer [4 Marks]
d) Consider the argument that distribution transparency may not be in place for pervasive
systems. Explain why this argument is not true for all types of transparencies giving an
appropriate example. [5 Marks]
e) Other than heterogeneity, explain FOUR other challenges involved in designing,
implementing and operating a distributed system [5 Marks]

4.
a) A server program written in one language (for example C++) provides the
implementation of a BLOB object that is intended to be accessed by clients that may be
written in a different language (for example Java). The client and server computers may
have different hardware, but all of them are attached to an internet. Describe the problems
that need to be solved to make it possible for a client object to invoke a method on the
server object. [5 Marks]
b) Provide two examples of client-server applications in which using a multithreaded client
is advantageous compared with a single threaded client. Explain. [5 Marks]
c) With regard to synchronization in distributed systems explain the benefits of logical
clocks over physical clocks? [4 Marks]
d) With aid of a diagram explain how the heterogeneity challenge of distributed architecture
is addressed in CORBA architecture [6 Marks]
5.
a) Explain why middleware based distributed systems are built above network operating
systems, not distributed operating systems. [5 Marks]
b) Outline FIVE differences between network operating systems, distributed operating
systems and middleware based distributed systems [5 Marks]
c) Not every node in a peer-to-peer network should become super-peer. What are the TWO
reasonable requirements that a super-peer should meet? [2 Marks]
d) Early distributed computing approaches assumed that the middleware has to provide
complete distribution transparency. Currently this opinion is changing. Explain why.

As members of Kabarak University family, we purpose at all times and in all places, to set apart in one’s heart,
Jesus as Lord. (1 Peter 3:15)
Kabarak University is ISO 9001:2015 Certified
Page 4 of 5
[2 Marks]
e) Describe precisely what is meant by a scalable system and explain the techniques that can
be used to achieve scalability? [3 Marks]
f) Explain why transport-level communication services are often inappropriate for building
distributed applications? [3 Marks]

As members of Kabarak University family, we purpose at all times and in all places, to set apart in one’s heart,
Jesus as Lord. (1 Peter 3:15)
Kabarak University is ISO 9001:2015 Certified
Page 5 of 5

You might also like