Operating System
Operating System
Bare Machine: Bare machine (or bare metal), in computer parlance, means
a computer executing instructions directly on logic hardware without an
intervening operating system.
The Bare machine is a type of environment in which there is no operating
system between the user and the system. Eventually, all the user
applications are executed and installed directly on the top of the hardware
resource using the machine language. The program has the full control of
the system due to the absence of operating system.
The use of a bare machine was cumbersome and inefficient since all the
tasks have to be done manually.
Today it is mostly applicable to embedded systems and firmware generally
with time-critical latency requirements, while conventional programs are
run by a runtime system overlaid on an operating system.
Clustered Systems: Clustered computers share storage and are closely
limked via Local Area Network(LAN) or faster interconnection.
Clustered system combines the best feature of distributed os and multi
processor system.
A computer cluster is a set of loosely or tightly connected computers that
work together so that, in many respects, they can be viewed as a single
system.
Example of cluster operating systems UnixWare, MOSIX and GLUnix.
The monolithic structure does not enforce data hiding in the operating
system. It delivers better application performance, but extending such a
system can be difficult work because modifying a procedure can introduce
bugs in seemingly unrelated parts of the system. Example Systems: CP/M
and MS-DOS
Layered Operating System: As operating systems became larger and more
complex, purely monolithic designs became unwieldy. The layered approach
to operating systems attempts to address this issue by grouping
components that perform similar functions into layers. Each layer
communicates exclusively with those immediately above and below it.
Lower- level layers provide services to higher-level ones using an interface
that hides their implementation.
Layered operating systems are more modular than monolithic operating
systems, because the implementation of each layer can be modified
without requiring any modification to other layers.A modular system has
self-contained componen that can be reused throughout the system. Each
component hides how it performs.
or The components of layered operating system are organized into modules
and layers them one on top of the other. Each module provides a set of
functions that other module can call. Interface functions at any particular
level can invoke services provided by lower layers but not the other way
around.
One advantage of a layered operating system structure is that each layer of
code is given access to only the lower-level interfaces (and data structures)
it requires, thus limiting the amount of code that wields unlimited power.
That is in this approach, the Nth layer can access services provided by the
(N-1)th layer and provide services to the (N+1)th layer. This structure also
allows the operating system to be debugged starting at the lowest layer,
adding one layer at a time until the whole system works correctly. Layering
also makes it easier to enhance the operating system; one entire layer can
be replaced without affecting other parts of the system. Layered operating
system delivers low application performance in comparison to monolithic
operating system.
Example Systems:
VAX/VMS, Multics, UNIX