An operating system is a program which acts as an interface between a computer user and computer hardware.It is a software which performs all tasks like file management, memory management, handling input and output, process management and controlling peripheral(output) devices.The primary goal of an operating system is thus to make the computer system convenient to use and the secondary goal is to use computer hardware in an efficient manner.
An operating system is an important component of a computer system which controls all other components of the computer system.
some popular operating systems examples are:-
- Microsoft Windows
All computer program except the firmware require an operating system function
Major components of operating system:
- The operating system
- Application program(compilers,linker,DBMS etc)
PROCESS OF WORKING
For input, User interacts with application and application interacts with the operating system and operating system interacts with the hardware and for output, the process is vice versa.
Functions of operating system
- Loads necessary programs into the computer memory which are required for proper functioning.
- Provides the instructions to prepare user interface i.e way to interact with the user whether through typed commands or symbols.
- Manages the way information is stored and retrieved from disks.
- Coordinates how programs work with CPU, keyboard, mouse and other peripheral devices as well as with other software.
- Single Program: This is a single user operating system, so only one user program can be supported and executed by it at any point of time
- Multi-program: This is a multi-user operating system. It supports multi programming i.e more than one user can be supported by it.
- Time sharing: This uses time sharing technique.Each user is given a share of CPU time if the time elapses CPU shifts over to next job waiting and the previous program is put to wait.
- Real-time: In this, the jobs have fixed deadlines and jobs have to be completed within their deadlines.
- Multiprocessing: It is capable of handling more than one processor as the jobs have to be executed on more than one processor(CPU). It is capable of load-sharing so that system efficiency improves.