Operating System Architecture
Operating System Architecture
by
Ms. Zubaria Noureen
Types of OS Architecture
• Monolithic Architecture
• Layered Architecture
• Microkernel Architecture
• Hybrid Architecture
Monolithic Architecture
• Oldest and the simplest type of Operating System Architecture.
• Each component is contained in a single kernel only.
• The various components in this OS Architecture communicate with
each other via function calls ( as discussed earlier)
• Examples: Unix-like kernels. Linux.
Monolithic
Advantages of Monolithic Architecture
• This type of architecture is easier to develop.
• Easy to maintain.
• It shows efficient performance because of the direct communication
between the components.
• It is easy to secure as all the components are contained in a single file.
Disadvantages of Monolithic Architecture
• It is difficult to be scalable.
• Hard to update since the change in one component result in an entire
system update
• Large codebase which is difficult to understand.
Layered Architecture
• Operating system is divided into layers where each layer is
performing a specific set of functions.
• Layers are in a hierarchical order, with each layer depending on the
layer below it.
• The layering approach makes the system easier to maintain.
• Example: Windows NT operating system
Layered
Architecture
Advantages of Layered Architecture
• Separation of concerns makes it easier to develop and maintain
individual layers
• Components within a layer can be swapped out without affecting
other layers
• Scalability is improved because layers can be scaled independently
Disadvantages of Layered Architecture
• Increased complexity due to the number of layers
• This architecture can result in slower performance due to
communication overhead between layers
Microkernel Architecture
• Two parts are functional. Inside and outside
• Outside the kernel : Process management, networking, file system
interaction, and device management.
• Inside the kernel: Memory management and synchronization
• The processes inside the kernel have a relatively high priority, and the
components are highly modular, so even if one or more components
fail, the operating system continues to function.
• Examples: Apple MacOS, iOS
Microkernel
Advantages of Microkernel Architecture