An operating system (OS) is a set of software that manages computer hardware resources and provides common services for computer programs. The operating system is a vital component of the system software in a computer system.
Types of Services
- Program Execution
- Handling Input/output operation
- Manipulation of file system
- Error detecting and handling
- Resource Allocation
- Information and Resource Protection
Operating System’s function
- Process Management
- Storage (Memory) Management
- File/Information Management
In this type of scheduling, a scheduled job always completes before another scheduling decision is made. The scheduling techniques which use non-preemptive scheduling are:
- First come first served (FCFS) scheduling- IN this, the process which requests the CPU first, is allocated the CPU first.
- Shortest job next (SjN) – In SjN scheduling, whenever a new job is admitted, the shortest of the arrived jobs is selected and given the CPU time.
- Deadline scheduling- In deadline scheduling, the job with the earliest deadline is selected for scheduling.
In this type of scheduling, a higher priority job get CPU time before the completion of a lower priority job.The techniques which use preemptive scheduling are:
- Round Robin Scheduling- Round Robin scheduling is aimed at giving all programs equal opportunity to make progress
- Response Ratio Scheduling- Response Ratio = Elapsed time/Execution time received. The job with highest response ratio is preferred over others.
Memory Management Techniques
Contagious Storage Allocation- In this classical approach, each problem, which is to be executed, is allocated a contagious storage memory. Each job step is considered as a single independent entity for allocation of a contagious storage area.
Non-Contagious Storage Allocation- In non-contagious storage allocation, a program can be stored in non-contagious memory areas. A program is divided into smaller components of equal sizes.
A computer system works with Information. Thus managing this information is also an important and necessary task performed by an OS. To support this function, OS’s have one component called ‘Information Management Component’. This information management component of OS is structured as follows:
- Physical IOCS (Input Output Control System) – It is responsible for device management and for ensuring device independence.
- Logical IOCS- It is responsible for efficient organization and access of data on IO devices.
- File System- It is responsible for protection and controlled sharing of files.
File System’s function is to facilitate easy creation, storage and access of files in order to enable easy sharing of files between programs and their protection against illegal access.
Types of OS
There are different types of OSs available, which require different types of hardware to run upon. The operating systems are of
Mainly following types:
- Single program OS- This OS is single user operating system, so only one user program can be supported and executed by it at any point of time.
- Multi-program OS- Unlike single program OS, this is multi-user OS. It supports multi-programming i.e., more than one user can be supported by it.
- Time Sharing OS- This OS uses the time sharing technique. Each active user program is given a fair chance of CPU time, if the time elapses or an I/O operation is requested, CPU shifts over to the next job waiting and the previous program is put to wait or handed over to I/O manager.
- Real Time OS- In real time OS, the jobs have fixed deadlines and the jobs have to be completed within their deadlines. The system performance is measured by its ability to complete its job within the specified deadlines.
- Multiprocessing OS- The multiprocessing OS is capable of handling more than one processor as the jobs have to be executed on more than one processor. The multiprocessing OS should be capable of load-sharing in case of identical processors so that the system’s efficiency improves.
Some commonly used Operating System