Hybrid Architecture of Operating System




Hybrid Architecture of Operating System


 

All the architectures discussed so far have their own advantages and disadvantages. Monolithic systems are quite fast but their expansion is very difficult. Layered structure gives an efficient division of functionalities but if the number of layers is very high, it is difficult to manage the system. Microkernel architecture is quite efficient in isolating the core functionalities within the microkernel but the other services which are outside the kernel are not properly integrated.

And hence the idea was to combine the best functionalities of all these approaches and hence this design is termed as the hybrid structured operating system.

Topics You May Be Interested In
Real Time Operating System Atomicity
Allocating Kernel Memory Revocation Of Access Rights
Mass Storage Structure Overview Linux History
Free Space Management Rc 4000
File Sharing What Is Multics?

Hybrid Architecture of Operating System

Fig. Hybrid architecture of operating system

It contains three layers:

  1. Hardware abstraction layer: It is the lowermost layer that acts as an interface between the kernel and hardware.

    Topics You May Be Interested In
    Network Operating System The Operating System
    Operating System Operations- Dual-mode Operation, Timer What Is Multics?
    Demand Paging Windows Xp- History
    Thrashing Event Ordering
    Revocation Of Access Rights Distributed System-motivation
  2. Microkernel layer: This layer is nothing but the microkernel only which comprises of the three basic functionalities i.e., CPU scheduling, memory management, Inter-Process Communication.

  3. Application layer: This layer is in user area and acts as an interface between user space and microkernel layer. It comprises of the remaining functionalities like file server, error detection, I/O device management etc.

In this way, the modular approach of microkernel structure and the layered approach both are restored, keeping the no. of layers easy to manage.

So, hybrid approach is highly useful and is largely used in present-day operating systems.

Topics You May Be Interested In
System Boot Atomicity
System Calls Network Topology
Computer System Organization Robustness
Segmentation Afs - Andrew File System
Swap Space Management Event Ordering

Most of the Mach operating systems run on this hybrid architecture only.

Advantages:

  1. Easy to manage due to layered approach.

  2. Number of layers is not very high.

    Topics You May Be Interested In
    Various Operating System Services File Replication
    Microkernel Architecture Of Operating System Thread Libraries
    Interprocess Communication Network Structure
    Direct Memory Access What Is Compression In Mutimdedia?
    Copy On Write Threads-summary
  3. Kernel is small and isolated.

  4. Improved security and protection.



Frequently Asked Questions

+
Ans: The basic ideology in this architecture is to keep the kernel as small as possible. We know that kernel is the core part of the operating system and hence it should be meant for handling the most important services only. view more..
+
Ans: This is an important architecture of operating system which is meant to overcome the disadvantages of early monolithic systems. view more..
+
Ans: It is the oldest architecture of the operating system. We know that all the core software components of the operating system are collectively known as the kernel. view more..
+
Ans: the idea was to combine the best functionalities of all old approaches and hence this design is termed as the hybrid structured operating system. view more..
+
Ans: System Calls and Programs All the present-day operating systems support the following two modes of operation for the CPU: User mode Kernel mode view more..
+
Ans: A batch system executes jobs, whereas a time-shared system has user programs, or tasks. Even on a single-user system such as Microsoft Windows, a user may be able to run several programs at one time: a word processor, a web browser, and an e-mail package. Even if the user can execute only one program at a time, the operating system may need to suppoft its own internal programmed activities, such as memory management. view more..
+
Ans: Multiprocessing is the use of two or more central processing units (CPUs) within a single computer system. The term also refers to the ability of a system to support more than one processor or the ability to allocate tasks between them. view more..
+
Ans: Process scheduling selects processes from the queue and loads them into memory for execution. Process loads into the memory for CPU scheduling. The primary objective of the job scheduler is to provide a balanced mix of jobs, such as I/O bound and processor bound. ... Time-sharing operating systems have no long term scheduler. view more..
+
Ans: Inter process communication (IPC) is a mechanism which allows processes to communicate each other and synchronize their actions. The communication between these processes can be seen as a method of co-operation between them. Processes can communicate with each other using these two ways: Shared Memory. Message passing. view more..
+
Ans: Direct memory access (DMA) is a method that allows an input/output (I/O) device to send or receive data directly to or from the main memory, bypassing the CPU to speed up memory operations. The process is managed by a chip known as a DMA controller (DMAC) view more..
+
Ans: An instruction cycle (sometimes called a fetch–decode–execute cycle) is the basic operational process of a computer. It is the process by which a computer retrieves a program instruction from its memory, determines what actions the instruction dictates, and carries out those actions. view more..
+
Ans: System programs provide a convenient environment for program development and execution. Some of them are simply user interfaces to system calls; others are considerably more complex view more..
+
Ans: After an operating system is generated, it must be made available for use by the hardware. But how does the hardware know where the kernel is or how to load that kernel? The procedure of starting a computer by loading the kernel is known as booting the system. view more..
+
Ans: A system as large and complex as a modern operating system must be engineered carefully if it is to function properly and be modified easily. A common approach is to partition the task into small components rather than have one monolithic system. Each of these modules should be a well-defined portion of the system, with carefully defined inputs, outputs, and functions. view more..
+
Ans: System calls provide an interface to the services made available by an operating system. These calls are generally available as routines written in C and C++, although certain low-level tasks (for example, tasks where hardware must be accessed directly), may need to be written using assembly-language instructions. view more..
+
Ans: Before we can explore the details of how computer systems operate, we need a general knowledge of the structure of a computer system. In this section, we look at several parts of this structure to round out our background knowledge. view more..
+
Ans: It is possible to design, code, and implement an operating system specifically for one machine at one site. More commonly, however, operating systems are designed to run on any of a class of machines at a variety of sites with a variety of peripheral configurations. The system must then be configured or generated for each specific computer site, a process sometimes known as system generation (SYSGEN). The operating system is normally distributed on disk or CD-ROM. To generate a system, we use a special program. The SYSGEN program reads from a given file, or asks the operator of the system for information concerning the specific configuration of the hardware system, or probes the hardware directly to determine what components are there. view more..
+
Ans: A question that arises in discussing operating systems involves what to call all the CPU activities. A batch system executes jobs, whereas a time-shared system has user programs, or tasks. Even on a single-user system such as Microsoft Windows, a user may be able to run several programs at one time: a word processor, a web browser, and an e-mail package. Even if the user can execute only one program at a time, the operating system may need to support its own internal programmed activities, such as memory management. In many respects, all these activities are similar, so we call all of them processes. The terms job and process are used almost interchangeably in this text. Although we personally prefer the term process, much of operating-system theory and terminology was developed during a time when the major activity of operating systems was job processing. It would be misleading to avoid the use of commonly accepted terms that include the word job (such as job scheduling) simply because process has superseded job. view more..




Rating - 3/5
481 views

Advertisements