Why is there a Need for an Operating System?
What is Operating System?
As we all are very familiar with the communication system between two people when they are far from one another or simply both in different countries, i.e., through mobile communication. Similarly maintaining a communication link between a computer hardware and software, as well as computer system and a human, operating system is used as a mediator, which means, operating system is an interface between a user, hardware, and a software application. So, we can say, Operating system is a system software that manages all the computer hardware and software applications, and work as an interface between user, hardware, and software applications. It enables software programs to directly communicate with hardware components without need of knowing their working procedures.
History of the Operating System
- Before the arrival of the OS in the technical world, there were only single-tasking machines were available in the market.
- The programs and order of the system loaded were all by using punch cards and tapes which were only available till the program crashed. Then in the early 1950s, Alen Turing launched some assisting libraries for the programs, And he also made a linking of this library with the user’s programs and thus helped in assisting in input, output, and compiling procedures. All was laid on the foundation of OS.
- In the same year, for IBM 701 general-motors research lab implemented the first OS. Later on, in the year 1960, OS implementation got started using some disks.
- Microsoft built an operating system named DOS in the year 1981. And further, in 1985, they combined it with GUI abbreviation for Graphical User Interface (GUI). Now presently, the used versions are made of these only.
Why need for Operating System existed?
As we got to know that the operating system is used as an interface between the user, system hardware, and software. Hence its requirements lie in providing an interface.
Below are some of the requirements:
- Allocating Resources: For distributing the various programs in CPU and memory among various processes, this operating system is been used. Since more than one program runs so it became mandatory to introduce the operating system.
- Multitasking: System software needs to be facilitated with more than one process at a time. This will help in the execution process, and this is only possible with the help of the operating system.
- Graphical user interface: It provides smooth and understandable interaction between both interfaces. It simplifies the system process and enables the user to understand the process better.
- Files Management in the software: An operating system is responsible for managing files and directories on computer’s storage device. OS organizes files into directories and provides a simple way for applications to create, read, write, and delete files.
- User Interface: It links to support for the whole system which enables the communication between the user and the system by providing an user interface, such as GUI (Graphical User Interface, Command Line Interface, etc). Without this, it is impossible to perform an interaction with the system by a user.
Types of Operating Systems:
Many operating systems exist today in the market, depending upon their purpose and usage.
1. Batch Operating System:
We may see or observe frequent utilization of resources in some jobs for performing the same amount of tasks or the same task itself. For this reason, many people go for batch operating systems. It is because to break the vast and lengthy processes into small jobs and then work on them. This process of making and diving Lengthy jobs into sub-jobs increases the speed of execution time. No direct interaction with the system occurred here but all the jobs are punched and then provided to the operator.
2. Multitasking/ Time-Sharing operating system:
You must hear of multiprocessor, right? The same scenario occurs here. But here the single processor is used by many different programs to run simultaneously using same CPU resources at the same time. Thus, the processor is named or called as time shared because one processor is been shared among different Tasks within a single system.
We can consider Linux, Windows, or MacOS as an example.
3. Realtime operating system:
The name itself suggests to us or gives an idea about the type of operating system. This operating system executes in absolutely zero time and gives real-time outputs as it is as they produced.
We can consider military systems as one kind of this type of system.
4. Distributed operating system:
The distributed operating system means the system will use many of the processors which are located on many different systems. This system does this thing to fasten the execution speed and the advantage of this is that no loss of information occurs here.
In a distributed operating system, each computer in the network runs its own instance of the operating system, but they all work together to provide a seamless user experience.
Some examples of distributed operating systems include AIX operating system, Solaris operating system, etc.
5. Network Operating System:
Network operating systems manage the data or the information. It provides security for the operations, processes, applications, and other networking systems and functions. It can even manage user groups. These are run by servers.
We can consider numerous examples like Microsoft Windows server, MAS operating system, and many more.
6. Mobile Operating System:
Mobiles are the most used devices nowadays; these mobile operating systems are mainly designed to run mobiles only for fast execution and speed. Not alone in mobiles but also tablets and many used wearable gadgets. These are prior for use in only phones and can’t run on computer systems.
We may give numerous examples of this operating system. One of the most known operating systems is the Android system.
7. Single-user Operating System:
This allows the execution of one process at a time. It is in contrast to multi-user operating systems or multitasking operating systems. It avoids parallel execution of functions.
We can take the example of MS-DOS.
We got to know the need for an operating system and its numerous types. But how to find the best operating system?
Operating system - Features
Every one of us while purchasing a system, first check the details of an operating system. The features afford by that particular system and all. So, we consider it the most important to verify its features and all.
The probable features that are present mostly in an operating system are:
- Security: The security provided to the system and the data that is software.
- Allocation of resources: The correct locations of files, and data.
- Execution: It makes the easy and speedy execution, which decreases the execution time.
- Threats protection: Protects from the threats like information protection, resources protection, etc.
- System manipulation: Manipulates the file system.
- Handling: Ability to handle the input and output operations in the system for better performance.
- Multitasking: Capable of carrying multiple tasks simultaneously using same resources.
- Identifying errors and their handling: Error detection is done by the operating system.
- Virtualisation
- Need for permission and accessing of file system: Accessing files requires permission.
- Memory management: Managing the memory in the system.
- Protected mode: Capable to protect and supervise the system software and hardware.
- Execution of the program: The program execution operates by the operating system.
- Performance: Able to provide high performance of the system.
- Partitioning: Parts or divides the jobs for fast execution.
- Buffering
- Creation of virtual memory.
Functions of an Operating System
After the selection of a feature, one will go through the functions of an operating system. Below are the operating system functions mentioned.
- Detection of errors: This is a mechanism that produces traces, error messages, and any other trash data. Every operating system exhibits this mechanism. It contains debugging tools and error-detecting devices or aids.
- Allocating jobs: The resources used by the jobs are tracked by the operating system, it includes the time to execute steps and the order of execution.
- Interaction and link or coordination between the software: Multitasking is one of the features of the operating system. Therefore, it takes that responsibility to maintain that interaction and coordination between the two running applications. And the coordination between applications that are running at that time in the system. Simply it means the distribution of assemblers and interpreters.
- Performance of the system: The performance of a system is defined by the time taken between a request and its response. The operating system keeps track of all these processes and time.
- Security of the system: Usually we see that due to a lack of security leads to the injection of viruses into the system and malware and threats are the result of it. When we went through the features of the operating system we came across the word security. The operating system’s ability is it protects the system from all the above mentioned. External access to passwords, files, and data is strongly protected by the operating system.
- Managing files: Sorting files is done by the operating system using the stack principle. Navigation to a particular directory or a file is difficult if an operating system is absent. And directories consist of user files and other documents.
Below are the activities performed by the operating system for file management:
- File systems include information, location are tracked by the operating system.
- It will decide the resource for the job in order.
- Allocation of resources done by the operating system for a better file management system.
- Not only it allocates but also de-allocates the resources.