Computer - Operating System
An operating system is a program that acts as an interface between the software and the computer hardware.
It is an integration set of specialised programs that are used to manage overall resources and operations of the computer.
It is a specialised software that controls and monitors the execution of all other programs that reside in the computer, including application programs and other system software.
Objectives of Operating System
Making a computer system convenient to use in an efficient manner.
To hide the details of the hardware resources from the users.
To provide users a convenient interface to use the computer system.
To act as an intermediary between the hardware and its users and making it easier for the users to access and use other resources.
Manage the resources of a computer system.
Keep track of who is using which resource, granting resource requests, according for resource using and mediating conflicting requests from different programs and users.
The efficient and fair sharing of resources among users and programs.
Characteristics of Operating System
Memory Management -- It keeps track of primary memory, i.e., what parts of it are in use by whom, what parts are not in use, etc. Allocates the memory when the process or program requests it.
Processor Management -- Allocates the processor (CPU) to a process. Deallocate processor when processor is no longer required.
Device Management -- Keeps tracks of all devices. This is also called I/O controller. Decides which process gets the device when and for how much time.
File Management -- Allocates the resources. Deallocates the resource. Decides who gets the resources.
Security -- By means of passwords & similar other techniques, preventing unauthorized access to programs & data.
Job accounting -- Keeping track of time & resources used by various jobs and/or users.
Control over system performance -- Recording delays between requests for a service & from the system.
Interaction with the operators -- The interaction may take place via the console of the computer in the form of instructions. Operating System acknowledges the same, do the corresponding action and inform the operation by a display screen.
Error-detecting aids -- Production of dumps, traces, error messages and other debugging and error-detecting methods.
Coordination between other software and users -- Coordination and assignment of compilers, interpreters, assemblers and other software to the various users of the computer systems.