Open In App

Components of Operating System

Last Updated : 05 Dec, 2022
Like Article

An Operating system is an interface between users and the hardware of a computer system. It is a system software that is viewed as an organized collection of software consisting of procedures and functions, providing an environment for the execution of programs. The operating system manages resources of system software and computer hardware resources. It allows computing resources to be used in an efficient way. Programs interact with computer hardware with the help of operating system. A user can interact with the operating system by making system calls or using OS commands.

Important Components of the Operating System:

  • Process management
  • Files management
  • Command Interpreter
  • System calls
  • Signals
  • Network management
  • Security management
  • I/O device management
  • Secondary storage management
  • Main memory management
Components of Operating System


Process Management :

A process is a program in execution. It consists of the followings:

  • Executable program
  • Program’s data
  • Stack and stack pointer
  • Program counter and other CPU registers 
  • Details of opened files

A process can be suspended temporarily and the execution of another process can be taken up. A suspended process can be restarted later. Before suspending a process, its details are saved in a table called the process table so that it can be executed later on. An operating system supports two system calls to manage processes Create and Kill –

  • Create a system call used to create a new process.
  • Kill system call used to delete an existing process.

A process can create a number of child processes. Processes can communicate among themselves either using shared memory or by message-passing techniques. Two processes running on two different computers can communicate by sending messages over a network.

Files Management :

Files are used for long-term storage. Files are used for both input and output. Every operating system provides a file management service. This file management service can also be treated as an abstraction as it hides the information about the disks from the user. The operating system also provides a system call for file management. The system call for file management includes –

  • File creation
  • File deletion
  • Read and Write operations

Files are stored in a directory. System calls provide to put a file in a directory or to remove a file from a directory. Files in the system are protected to maintain the privacy of the user. Below shows the Hierarchical File Structure directory.

File Structure Directory


Command Interpreter :

There are several ways for users to interface with the operating system. One of the approaches to user interaction with the operating system is through commands. Command interpreter provides a command-line interface. It allows the user to enter a command on the command line prompt (cmd). The command interpreter accepts and executes the commands entered by a user. For example, a shell is a command interpreter under UNIX. The commands to be executed are implemented in two ways:

  • The command interpreter itself contains code to be executed.
  • The command is implemented through a system file. The necessary system file is loaded into memory and executed.

System Calls :

System calls provide an interface to the services made by an operating system. The user interacts with the operating system programs through System calls. These calls are normally made available as library functions in high-level languages such as C, Java, Python etc. It provides a level of abstraction as the user is not aware of the implementation or execution of the call made. Details of the operating system is hidden from the user. Different hardware and software services can be availed through system calls.

System calls are available for the following operations:

  • Process Management
  • Memory Management
  • File Operations
  • Input / Output Operations  

Signals :

Signals are used in the operating systems to notify a process that a particular event has occurred. Signals are the software or hardware interrupts that suspend the current execution of the task. Signals are also used for inter-process communication. A signal follows the following pattern :

  • A signal is generated by the occurrence of a particular event it can be the clicking of the mouse, the execution of the program successfully or an error notifying, etc.
  • A generated signal is delivered to a process for further execution.
  • Once delivered, the signal must be handled.
  • A signal can be synchronous and asynchronous which is handled by a default handler or by the user-defined handler.

The signal causes temporarily suspends the current task it was processing, saves its registers on the stack, and starts running a special signal handling procedure, where the signal is assigned to it.

Network Management :

In today’s digital world, the complexity of networks and services has created modern challenges for IT professionals and users. Network management is a set of processes and procedures that help organizations to optimize their computer networks. Mainly, it ensures that users have the best possible experience while using network applications and services.

Network management is a fundamental concept of computer networks. Network Management Systems is a software application that provides network administrators with information on components in their networks. It ensures the quality of service and availability of network resources. It also examines the operations of a network, reconstructs its network configuration, modifies it for improving performance of tasks.

Security Management:

The security mechanisms in an operating system ensure that authorized programs have access to resources, and unauthorized programs have no access to restricted resources. Security management refers to the various processes where the user changes the file, memory, CPU, and other hardware resources that should have authorization from the operating system. 

I/O Device Management :

The I/O device management component is an I/O manager that hides the details of hardware devices and manages the main memory for devices using cache and spooling. This component provides a buffer cache and general device driver code that allows the system to manage the main memory and the hardware devices connected to it. It also provides and manages custom drivers for particular hardware devices. 

The purpose of the I/O system is to hide the details of hardware devices from the application programmer. An I/O device management component allows highly efficient resource utilization while minimizing errors and making programming easy on the entire range of devices available in their systems. 

Secondary Storage Management : 

Broadly, the secondary storage area is any space, where data is stored permanently and the user can retrieve it easily. Your computer’s hard drive is the primary location for your files and programs. Other spaces, such as CD-ROM/DVD drives, flash memory cards, and networked devices, also provide secondary storage for data on the computer. The computer’s main memory (RAM) is a volatile storage device in which all programs reside, it provides only temporary storage space for performing tasks. Secondary storage refers to the media devices other than RAM (e.g. CDs, DVDs, or hard disks) that provide additional space for permanent storing of data and software programs which is also called non-volatile storage.

Main memory management :

Main memory is a flexible and volatile type of storage device. It is a large sequence of bytes and addresses used to store volatile data. Main memory is also called Random Access Memory (RAM), which is the fastest computer storage available on PCs. It is costly and low in terms of storage as compared to secondary storage devices. Whenever computer programs are executed, it is temporarily stored in the main memory for execution. Later, the user can permanently store the data or program in the secondary storage device.

Similar Reads

System Protection in Operating System
Introduction: System protection in an operating system refers to the mechanisms implemented by the operating system to ensure the security and integrity of the system. System protection involves various techniques to prevent unauthorized access, misuse, or modification of the operating system and its resources. There are several ways in which an op
3 min read
User View Vs Hardware View Vs System View of Operating System
User View of Operating System: The Operating System is an interface, hides the details which must be performed and present a virtual machine to the user that makes it easier to use. Operating System provides the following services to the user. Execution of a programAccess to I/O devicesControlled access to filesError detection (Hardware failures, a
1 min read
File System Implementation in Operating System
Prerequisite - File Systems in Operating Systems A file is a collection of related information. The file system resides on secondary storage and provides efficient and convenient access to the disk by allowing data to be stored, located, and retrieved. File system implementation in an operating system refers to how the file system manages the stora
11 min read
Xv6 Operating System -adding a new system call
Prerequisite - Xv6 Operating System -add a user program In last post we got to know how to add user program in Xv6 Operating System. Now here you will see how to add new system call in Xv6 Operating System. A dding new system call to xv6: A system call is way for programs to interact with operating system. A computer program makes system call when
6 min read
Traps and System Calls in Operating System (OS)
Traps and system calls are two mechanisms used by an operating system (OS) to perform privileged operations and interact with user-level programs. Here is an overview of each mechanism: Traps: A trap is an interrupt generated by the CPU when a user-level program attempts to execute a privileged instruction or encounters an error. When a trap occurs
3 min read
Difference between System Software and Operating System
1. System Software: System software is a type of computer program that is designed to run a computer's hardware and application programs it controls a computer's internal functioning, chiefly through an operating system. It also controls peripherals devices such as monitors, printers, and storage devices. 2. Operating System: An operating system or
3 min read
Fork System Call in Operating System
In many operating systems, the fork system call is an essential operation. The fork system call allows the creation of a new process. When a process calls the fork(), it duplicates itself, resulting in two processes running at the same time. The new process that is created is called a child process. It is a copy of the parent process. The fork syst
5 min read
System Programs in Operating System
System Programming can be defined as the act of building Systems Software using System Programming Languages. According to Computer Hierarchy, Hardware comes first then is Operating System, System Programs, and finally Application Programs. Program Development and Execution can be done conveniently in System Programs. Some of the System Programs ar
3 min read
Paging in Operating System
Paging is a memory management scheme that eliminates the need for a contiguous allocation of physical memory. The process of retrieving processes in the form of pages from the secondary storage into the main memory is known as paging. The basic purpose of paging is to separate each procedure into pages. Additionally, frames will be used to split th
9 min read
Multiple-Processor Scheduling in Operating System
In multiple-processor scheduling multiple CPU's are available and hence Load Sharing becomes possible. However multiple processor scheduling is more complex as compared to single processor scheduling. In multiple processor scheduling there are cases when the processors are identical i.e. HOMOGENEOUS, in terms of their functionality, we can use any
7 min read