- Back to Home »
- Operating System Components:
Operating System Components:
An operating system has many components to manage all resources of computer system while ensuring proper execution of programs.
The list of operating system components is as follows:
1. Process Management:
A process is a program in execution. A process needs certain resources, including CPU time, memory, files and I/O devices in order to accomplish its task. The operating system is responsible for the following activities in connection with process management:
Process Creation
Process Deletion
Process Suspension
Process Resumption
Provision of a mechanism for process synchronization
Provision of a mechanism for process communication
2. Main Memory Management:
Memory management is a process of optimizing the use of main memory. RAM is used, to store data and instructions temporarily during execution. Operating system allocates memory area to different programs. The allocated memory area is De-allocating when the program finishes.
Some operating systems allocates a part of storage medium like hard disk as additional RAM. A part of a running program can be in RAM and the remaining part may be on hard disk. This is known as virtual memory.
The area of hard disk used for virtual memory is called swap file. It is used to exchange data, information, and instructions between memory and hard disk. The amount of data and program instructions that can swap at a given time is called page. The process of swapping items between memory and hard disk is called paging.
A situation in which most of the time of operating system is wasted in paging instead of executing the program is called thrashing.
The operating system is responsible for the following activities in connection with memory management:
Keeping track of which parts of memory are currently being used and by whom.
Deciding which processes to load when memory space becomes available.
Deciding how much memory is to be allocated to a process.
Allocating memory space as needed.
De-allocating memory space as needed.
3. Secondary Storage Management:
Main memory or primary storage is volatile and too small to accommodate all data and programs permanently. The computer system must provide secondary storage to back up main memory. Most modern computer systems use disks as the principle storage medium for both programs and data. The operating system is responsible for the following activities in connection with disk management:
Free space management
Storage allocation and de-allocation
Disk Scheduling
4. I/O System Management:
The role of operating system in I/O system is to manage and control I/O operations and I/O devices. One goal of I/O is to provide the simplest interface and to optimize I/O for maximum concurrency. The I/O system manages different I/O devices such as mouse, keyboard, monitor and printer etc. The I/O system consists of the following:
A buffer caching system
A general device driver interface
Drivers for specific hardware devices
5. File Management:
A file is a collection of related information defined by its creator. A file can be a program like word processing program. It can be a data file like images, songs etc. A file management system is a system software that provides services to the user and applications related to the use of file.
The operating system is responsible for the following activities in connection with file management:
File creation
File deletion
Directory creation
Directory deletion
Support of primitives for manipulating files and directories
Mapping files onto secondary storage
File backup on stable (non-volatile) storage media
6. Protection System:
If a computer system has multiple users and allows concurrent execution of multiple processes, the processes must be protected from each other's activities. The protection refers to a mechanism to control access by programs, process or users to the system and resources.
The protection mechanism must:
Distinguish between authorized and unauthorized usage
Specify the controls that are to be imposed
Provide a means of enforcement
7. Networking (Distributed Systems):
A distributed system is a collection of processors that do not share memory or a clock. Each processor has its own memory. The processors in the system are connected through a communication network. A distributed system provides access to various system resources.
The access to a shared resource allows:
Computation speed-up
Increased data availability
Enhanced reliability
8. Command Interpreter System:
Command interpreter is an interface between the user and operating system. It is one of the most important system programs for operating system. It is used to read and execute user commands. Some operating system provide command interpreter in the kernel. The command interpreter system is also known as command-line interpreter or shell. Many commands are given to operating system by control statements which deal with following:
Process creation and management.
I/O handling
Secondary storage management
Main memory management
File-system access
Protection
Networking
The program that reads and interprets control statements has many different names. Some of these are:
Control card interpreter
Command line interpreter
Shell (in Unix)
The function of this program is to get and execute the next command statement.