Without its Software, a computer basically is useless. With its software, a computer can store, process and retrieve information, etc and can be engaged in many other valuable activities.
Computer Software can be roughly divided into two kinds
- System Software
- Application Software
They are designed for a particular Application and solves the problems of the users. Application software’s are Business Software, Engineering & Scientific Software, Embedded Software, Artificial Intelligence Software, etc.
They manage the operation of the computer and is a set of programs written to operate and control the operation of a computer system. Objectives of this type of software are to control and operate hardware components of the computer system in such a way that they yield maximum efficiency.
Operating System is a kind of System Software which controls and operates computer resources i.e. memory and I/O Devices etc can be utilized up to their full potential. So, an Operating System is a program that acts as an Interface between a computer user and computer hardware, and the purpose of an Operating System is to provide an environment in which a user can work in a convenient and efficient manner.
Operating Systems available are from Text-Based Operating Systems to GUI Operating Systems. Similarly, variety in Operating Systems is from Single user to Multi-user to Network Operating Systems. The goal of an Operating System is Convenience and Efficiency. Along with these two goals, another thing that emerged is the ability to evolve
i.e. What was before and what is now, and all the Modern Operating Systems of nowadays work like this.
Also Read: LINUX for Beginners
Services provided by Operating System:
The Operating System provides some services to programs and to the users of those programs, in order to make programming task easier.
Although services provided by Operating System differ from one Operating System to another, there are some Services that are provided by almost every Operating System.
Services provided by Operating System are
1. Program Execution.
The Operating System should be able to load a program into memory and execute it.
2. I/O Devices.
Normally, a user program cannot execute I/O operations directly. So when a running program needs an I/O, the Operating System should be able to fulfill the need of that program.
3. File System.
Programs need to read and write files. Similarly, new files can be created and unwanted existing files are deleted. Operating System should be able to manage the activities related to files.
Sometimes, programs need to exchange information with each other. Exchange of information can be implemented using a Shared Memory (Same Machines) or Message Passing in the form of Packets (On a Network). So, the Operating System should be able to communicate between programs.
5. Error Detection.
The Operating System should always be aware of possible errors. Errors occur due to Hardware i.e. CPU, Memory or I/O Devices, etc or due to Software i.e. User Programs, etc. The Operating System should take necessary steps to ensure correct and constant computing.
Following are the Services that do not help User Programs but are used for Sharing Computer Resources and giving Reliability/Stability and Efficiency.
6. Resource Allocation.
Operating System is the manager of resources and when resources are requested by different users at the same time, then Operating System Allocates and Deallocates these resources to many Users/Programs in an efficient manner.
Accounting is used for two purposes.
- To keep track of resources, i.e. which resources are used by which users so that they can be
- Usage Statistics of resources may be a valuable tool for researchers in order to reconfigure the system for improving Computing
8. Protection & Security.
Protection & Security is a very important service provided by the Operating System in Multi-user Environment.
The protection ensures that all access to System Resources is controlled and several jobs executed simultaneously should not interfere with each other.
Security ensures that outsiders will not gain access to the system. Security is implemented on users to specify passwords in order to gain access to System Resources.
Also Read: Why I Switched to Parrot OS?
There are different services of OS that can be used depending on their functionality.
- Time-Sharing (Multi-Tasking)
- Distributed Systems
- Real-Time Systems
These topics will be covered in coming articles do let us know what you thought and how it can be improved.