When you start your computer, you think you have a control, the mouse and keyboard will move and work as you wish them to. However, at the same time a lot of things are happening inside it and the Operating System (OS) is managing all those things. In this article, we will try to understand what a software must do to be called an Operating System, its functions, types and how OS in your computer works.
Table of Contents
- 1 What is Operating System (OS)
- 2 How Operating System Manages Hardware Resources Using Application Software
- 3 Functions of Operating System
- 4 Types of Operating Systems
What is Operating System (OS)
An Operating System (OS) is a powerful program that manages and controls the software and hardware on a computing device so as to make the device behave in a predictable but flexible way.
An OS acts an interface between a user and a device. Thus, in general sense, an OS is that software which helps a user to run other applications on his computing device.
Fig. 1 – Introduction to Operating System (OS)
All the computers and computer-like devices comprise Operating System, including laptop, desktop, or any other smart computing system like a smart phone or a smart watch.
Some of the popular Operating System are Linux, OS X, WINDOWS, VMS, OS/400, AIX, z/OS, etc.
How Operating System Manages Hardware Resources Using Application Software
The OS performs multiple functions and management. With some examples, we will understand how the it manages computer’s hardware resources by performing required services:
Front End Management of Hardware Resources
- Managing Input and Output devices such as a mouse, keyboard, display monitors, scanners and printers.
- Managing network devices such as routers, modems and network connections.
- Managing Storage devices, both internal and external drives.
Fig. 2 – Operating System (OS) – Interface Between User and Computer’s Hardware
Back End Utilization of Software Applications for Managing Hardware Resources
- It manages the allocation of internal memory between multiple applications.
- An OS sends massage about the status of operation and any error that may have occurred to the interactive user.
- It helps in performing batch jobs for example, printing etc.
- Depending on the capability of devices that can offer parallel processing, a program is managed by OS such that it can run on more than one processor at a time.
Functions of Operating System
The functions of an Operating System include:
- Memory Management
- Device Management
- Processor Management
- File Management
- Controls System Performance
- Error Detection
- Coordination among Software and Users
- Job accounting
Fig. 3 – Functions of Operating System (OS)
One of the main functions of OS is to manage the primary and secondary memory. All the memory devices such as hard disk, pen drive etc. are managed by OS.
Memory management keeps an eye on each and every memory location, in any case either it is allocated or it is not allocated (free). Memory allocation to the processes is also decided and checked by Operating System. It decides and checks which process will obtain memory and at what time.
An OS with help of their respective drivers manages device communication. Following activities are performed by an Operating System for device management:
- It Keep a track of all devices. This task is performed by I/O controller.
- It decides which process will get the device when and for how long.
- It allocates and de-allocates the device efficiently.
In a multi-programming environment, it is OS who decides which process will get the processor when and for how long. This task is called Process Scheduling. Following activities are done by Operating System for processor management:
- It keeps a track of processor tasking and checks the status of process. Traffic controller performs this task.
- It allocates the processor and also de-allocates processor when a process is complete and not required.
In a file system, generally directories are organized for usage and easy navigation. Following activities are performed by an OS under file management:
- It keeps a track of location, information, status etc. This collective is known as File System.
- It decides who will get the resources.
- It allocates and de-allocates the resources.
Controls System Performance
An OS records delays between a request and response of the system.
An OS by using password and other similar techniques prevents and checks unauthorized users to access the data and program.
By using various error detecting aids an operating system helps in prevention of errors.
Coordination among Software and Users
It Coordinates and assigns compilers, assemblers, interpreters and other software to users.
It keeps a track of resources and jobs used by different users all the time.
Types of Operating Systems
The broad family of operating systems can be categorized in to four types based on their controlling and supporting systems. These types are:
- Real Time Operating System (RTOS)
- Single User Single Task Operating System
- Single User Multi Tasking Operating System
- Multi User Operating System
Fig. 4 – Types of Operating System
Real Time Operating System (RT OS)
A Real Time Operating System (RT OS) intends to provide real time applications that process data without buffer delays. A Real Time Operating System is a time bound operating system which has fixed time constraints. Processing has to be done within the defined time constraints or the system will definitely fail. Examples of Real Time systems are Air Traffic Control Systems, Command Control Systems etc.
Real Time systems are classified in two parts i.e. on factors inside the computer system and factors outside the computer system. A missed deadline in Hard Real Time Systems is disastrous. However, in case of Soft Real Time Systems it may lead to a significant loss.
Command Control systems and Air traffic control systems are best examples of Hard Real Time systems. Online transaction systems, like booking a movie ticket or airline reservation systems are best examples of Soft Real Time systems.
Single User Single Task Operating System
As the name indicates, Single User Single Task OS is a system in which only one program is executed at one time. It manages the computer in a way that one user can successfully perform one thing at a time.
There is a problem with this type of OS that the program has to be arranged in a queue.
Single User Multi Tasking Operating System
Most people use this Operating-System on their computers, laptop and desktops today. Best examples of these types of Operating System are Apple’s Mac OS platform and Microsoft’s Windows.
This Operating System will allow a single user to operate several programs at the same time. For example, a Windows user may be writing an e-mail while printing a word document while downloading a file from Internet.
Multi User Operating System
Multi User OS allows various different users on different desktop or computer to access a single System. A user at the terminal or desktop, through a network takes access of the system and other system attached machines such as printers.
The Operating-System takes care of all the requirements of the various users in a balanced manner. Also, it ensures that each of the programs being used has a separate and sufficient resource so that problem of one user doesn’t affect the entire community of users.