An operating system is an important part of almost every computer system. It provides an environment to run user programs. It also performs basic tasks like input and output management i.e. it helps in using a structure in an efficient manner.
Any computer system has four different components:
1. The hardware
2. The operating system
3. The users
4. The application programs (Compilers, database, video games, business programs)
Hardware is available in the inner area. Operating System is at the outer level to that of hardware. Application programs are at the outer area of the operating system. Users interact with hardware through an application program and operating system.
The operating system is a view of a set of software tasks, supplied along with infrastructure for the efficient use of the machine. The main objectives of an operating system are as follows:
1. The primary aim of the operating system is to make hardware convenient for use.
2. To help users to execute programs.
3. To control the action in the program to prevent mistakes and improper use of the system.
4. To make provision for the security of information to users.
5. To eliminate duplicate errors by programmers in the development of complicated routines.
6. Proper scheduling of resources among users.
7. It provides facility to share the same hardware among the users.
Functions of Operating System: –
Operating system distributes some functions or services to the programs and the users. There are following three major types of services:
1) Memory Management
2) Process Management
3) Information Management
It includes different types of services such as storing, retrieving, modifying or deleting the information or data on various devices. It arranges the information regarding directories, allocating, reallocating the sectors to different files, and it ensures that right people have access to information and driving various devices.
If the operating system supports multiple users then services under this are very beneficial. In the multi-user operating system, some of the clients located at various terminals of a network may execute some programs at a time. In this regard system has to manage a record of all the running programs, schedule term and dispatch them one after another. But the user should feel that he has the full control of the CPU. The process management modules of the single user operating system are less complicated than a multi-user operating system.
When a task is executing, the operating system loads the job in main memory from the disk. But before loading it into memory, it should know that how much of free memory is available and how much of memory should allocate to the job. For this, the operating system manages a record of all free memory location. Before a task or program is loads into memory, the operating system consults with this list. It loads the program into memory and alters the list. When a program is executed complete, it removes the program from main memory and modifies the list. For this, the operating system determines memory allocation or reallocation policies and uses various programs and algorithms to achieve this.