1.3 OS Structures
1.3 OS Structures
There are four different structures that have been tried on designs of o/s: -
Monolithic systems
Layered systems
Virtual machines
Client server systems
Main Procedure
Service Procedure
Utility Procedure
LAYER FUNCTION
5 The human operator
4 User program
3 Input/output management
2 Operator-process-communication
1 Memory & storage management
0 Process allocation & multiprogramming
DBASE
OPERATING SYSTEM
The Kernel: A portion of the O/S that includes the most heavily used parts of S/W & kept
permanently in the main memory. It runs in a privileged mode & responds to calls from
processor & interrupts from devices.
Micro-kernel: A small privileged O/S core that offers modularity & flexibility, process
scheduling memory management and communication services. It relies on other processes to do
some of the functions traditionally associated with the O/S Kernel. The idea of micro-kernel is
that only the absolutely essential work should be in the kernel. The usual approach is to
implement most of the O/S functions in the user processes. To request a service such as reading a
block of file, a user process (Client process) sends request & a server processes, which then does
the work & sends back the answer in a client server mode. All the kernel does is to handle
communication between clients & servers.
Client: A process that requests services by sending messages to the server process.
Server: Process that responds to the clients requests via messages.
Message: A block of information that maybe exchanged between processes or a means of
communication between processes.
By splitting the O/S into parts, each handling one aspect i.e.:
File service
Process service
Terminal I/O service
Memory service,
each part becomes small & manageable; this is an advantage. Furthermore, because the
entire server runs as a user mode & not in the kernel mode, they do not have direct access to the
H/W. as a result if an error in the file server occurs, the file service may crush but not the whole
system. An advantage of this system is that it is adaptable to be used in distributed systems.