Operating system architectures have undergone changes based on industry functionality and security needs. The architecture identifies how the parts of the operating system operate with each other and the functionality that the applications require.
The complexity in operating systems is in the architectural approaches running in the kernel mode. As seen below, in a monolithic architectures, all the operating system processes operate in kernel mode.
In MS-DOS, an early operating system, its architecture was based upon monolithic design. The whole operating system acted as a software layer user applications and actual hardware. The issues that tend to arrive with this system is the complexity, portability, extensibility, and security.
If a flaw is found in a software component it becomes difficult to localize and quickly fix it, since the core code functionality is spread throughout the system.
Alternatively, layered operating system architectures divide system functionality into hierarchical layers.
A system that follows a layered architecture had five layers of functionality.
- Layer 0 controlled processor access and provided multiprogramming functionality;
- Layer 1 carried out memory management;
- Layer 2 provided interprocess communication;
- Layer 3 dealt with I/O devices;
- Layer 4 was where the applications resided.
0 comments:
Post a Comment