0% found this document useful (0 votes)
281 views4 pages

OS Structure

1. Early operating systems like MS-DOS and UNIX had a simple structure without defined user and kernel modes, allowing applications to crash the whole system. 2. The monolithic approach implements all OS functionality in a single large kernel program, including device drivers. 3. The layered approach breaks the OS into modular layers with defined interfaces, increasing flexibility but complexity. Examples include Windows NT and MINIX.

Uploaded by

Linda Brown
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
281 views4 pages

OS Structure

1. Early operating systems like MS-DOS and UNIX had a simple structure without defined user and kernel modes, allowing applications to crash the whole system. 2. The monolithic approach implements all OS functionality in a single large kernel program, including device drivers. 3. The layered approach breaks the OS into modular layers with defined interfaces, increasing flexibility but complexity. Examples include Windows NT and MINIX.

Uploaded by

Linda Brown
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Operating-System Structure

1.Simple Structure

In MS-DOS, applications may bypass the operating


system.
• Operating systems such as MS-DOS and the original
UNIX did not have well-defined structures.
• There was no CPU Execution Mode (user and kernel),
and so errors in applications could cause the whole
system to crash.
2. Monolithic Approach
• Functionality of the OS is invoked with simple function
calls within the kernel, which is one large program.
• Device drivers are loaded into the running kernel and
become part of the kernel.
A monolithic kernel, such as Linux and other Unix
systems.
3. Layered Approach
This approach breaks up the operating system into
different layers.
• This allows implementers to change the inner workings,
and increases modularity.
• As long as the external interface of the routines don’t
change, developers have more freedom to change
the inner workings of the routines.
• With the layered approach, the bottom layer is the
hardware, while the highest layer is the user
interface.
◦ The main advantage is simplicity of construction
and debugging.
◦ The main difficulty is defining the various layers.
◦ The main disadvantage is that the OS tends to be
less efficient than other implementations.

The Microsoft Windows NT Operating System. The lowest
level is a monolithic kernel, but many OS components are
at a higher level, but still part of the OS.
4. Microkernels
This structures the operating system by removing all
nonessential portions of the kernel and implementing them
as system and user level programs.
• Generally they provide minimal process and memory
management, and a communications facility.
• Communication between components of the OS is
provided by message passing.
The benefits of the microkernel are as follows:
• Extending the operating system becomes much easier.
• Any changes to the kernel tend to be fewer, since the
kernel is smaller.
• The microkernel also provides more security and
reliability.
Main disadvantage is poor performance due to increased
system overhead from message passing.
A Microkernel architecture.
Note
• Andrew Tanenbaum’s Minix is an example of a
microkernel system. Minix was developed primarily to
facilitate teaching graduate level operating system
classes. Tanenbaum has authored several text books
and is with VA University in Amsterdam.
Another well known microkernel system is Mach, which
was developed at Carnegie Mellon University in the mid-
1980’s. Mach was used as the low-level part of Apple OS
X.

You might also like