Download Assignment 3

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Library (computing) wikipedia , lookup

Plan 9 from Bell Labs wikipedia , lookup

CP/M wikipedia , lookup

Spring (operating system) wikipedia , lookup

Security-focused operating system wikipedia , lookup

Distributed operating system wikipedia , lookup

Transcript
Operating System II
Assignment 3
Dick Lei
D-A0-1658-9
25/09/2002
Chapter 1
P.54
Problems
1) What is the role of middleware in a distributed system?
Middleware as an additional layer is used in network operating systems to more or
less hide the heterogeneity of the collection of underlying platforms but also to
improve distribution transparency
4) Why is it not always a good idea to aim at implementing the highest degree of
transparency possible?
Although distribution transparency is generally preferable for any distribute system,
there are situations in which attempting to blindly hide all distribution aspects from
users is not an always a good idea. Such as many Internet applications repeatedly try
to contact a server before finally giving up. Consequently, attempting to mask a
transient server failure before trying another one may slow down the system as a
whole.
5) What is an open distributed system and what benefits does openness provide?
An open distributed system is a system that offers services according to standard rules
that describe the syntax and semantics of those services.
The benefits does openness provide as follow:
Portability: characterizes to what extent an application developed for a distributed
system A can be executed, without modification, on a different distributed system that
implements the same interface as A.
Flexible: easy to configure the system out of different components possibly from
different developers
Extensible: easy to add new components or replace existing ones without affecting
those components that stay in place
7) Scalability can be achieved by applying different techniques. What are these
techniques?
These techniques are:
1) Hiding communication latencies,
2) To reduce the overall communication,
3) Split a component into smaller part, and spreading those parts across the system,
4) Replication: increases availability, and helps to balance the load between
components leading to better performance
9) A multi-computer with 256-CPUs is organized as a 16X16 grid. What is the
worst-case delay (in hops) that a message might have to take?
In the 16X16 grid case, the worst-case delay is 15+15 =30 in hops that a message
might have to take. The longest path in 16X16 grid is the diagonal of the upper right
corner to lower left corner or upper left corner to lower right corner.
12) Explain how micro kernels can be used to organize an operating system in a
client-server fashion.
Since the micro kernel containing only the code that must execute in kernel mode,
which like for setting device registers, switching the CPU between processes,
manipulating the MMU, and capturing hardware interrupts. Then we can include a file
server in program language (e.g. Java or C language). Both the client and the server
need to share some definitions, for example, using the “ #include <header.h>
statement, which has the effect of causing a preprocessor to literally insert the entire
contents of header.h into the source program just before the complier starts compiling
the program.
13) Explain the principal operation of a page-base distributed shared memory system.
The principal of page-based distributed shared memory is as follows. In a DSM
(distributed shared memory) system, the address space is divided up into pages, with
the pages being spread over all the processors in the system. When a processor
references an address that is not present locally, a trap occurs, and the operating
system fetches the page containing the address and restarts the faulting instruction,
which now completes success fully.
18) What is the difference between a vertical distribution and a horizontal
distribution?
The characteristic feature of vertical distribution is that it is achieved by placing
logically different components on different machines. The term is related to the
concept of vertical fragmentation as used in distributed relational databases, where it
means that tables are split column-wise, and subsequently distributed across multiple
machines.
In horizontal distribution, a client or server may be physically split up into logically
equivalent parts, but each part is operating on its own share of the complete data set,
thus balancing the load.