In this article, we’ll be studying operating system services so we know that an operating system provides an environment for the execution of programs and it also provides certain services to programs and to the users of those programs.
So in this article, we will be seeing what are the services that are provided by the operating system to the programs and the users of programs all right.
There are 9 Operating System Services
- User Interface
- Program execution
- I/O Operations
- File System Manipulation
- Error Detection
- Resources Allocation
- Protection and Security
1. User interface
What is this user interface the user interface is something that allows the user to interact with the operating system or to interact with the computer itself almost all operating systems have a user interface.
And this user interface can take several forms like the command-line interface also known as CLI or the graphical user interface known as the GUI now examples of the command-line interface are like your command prompt that you have in Microsoft Windows or the terminal that you have in your open two based systems.
So in this command interface what you do is you provide text-based commands using your keyboard in order to perform certain tasks by the operating system and then the most commonly used user interface is the graphical user interface or the GUI.
So here what it is an interface where you have a Windows system with a pointing device like your mouse then you have your menus and you can click those menus or also you can provide inputs using your keyboard so this is the most commonly used and it is also the most user-friendly kind of user interface that we have so this is the first and one of the most important services.
2. Program Execution
That is provided by the operating system now the next service that is provided by the operating system is program execution now we know what our programs and we know what our software’s so the operating system must provide for the execution of the programs that means you should be able to run or execute your programs and software’s that you have the system must be able to load the program into memory and it should be able to run that program.
So this is also another very imp service that should be provided by an operating system now the next service that is provided by an operating system.
3. Input-Output Operations
The i/o operations or the input/output operations now a running program that you have it may require IO which may involve file or input/output devices and these input/output operations should be provided by the operating system.
And a user cannot directly control the input and output devices now you may think that when you are using your keyboard and mouse you feel like you are controlling it by yourself directly but there is the operating system in between you and your system that actually controls the usage of the i/o devices so this aya operation is also one of the most important operations that are provided by the operating system.
So here I have shown you some examples of input devices like keyboard mouse and other inputs and here you have the output devices like your monitor’s printers speakers and so on so you have your operating system which is in between you or in between the programs and the i/o devices which helps in the usage of this i/o device as properly.
4. Filesystem Manipulation
So that is what we mean by i/o operations which is also an important service provided by the operating system now the next service that is provided by the operating system is known as filesystem manipulation.
So this is also an important service and filesystem manipulation or filesystem management involves files now there are many files and directories in your system that has to be used now the operating system must control how these files are manipulated or how these files are managed so sometimes you may have to create files sometimes you may have to delete files sometimes.
You may have to modify files sometimes you may have to search for a given file so all this is controlled by the operating system and also it also controls the permission that is given to certain programs or users for the access of certain files so all the files that you have cannot be allowed to be used by every program or by every user there is an access restriction.
So these restrictions of access is also controlled by the operating system so this is another important service that is provided by the operating system which is file system manipulation now the next service that is provided by the operating system is communications now from the name itself you may already understand what is communications we already know what is communications but in here what we mean is communication between processes.
A process now there are many processes that are present and these processes often need to communicate with each other so that they can synchronize with each other and then their execution can be done in an efficient way so there are many circumstances in which one process needs to exchange information with another process.
So such communications may occur between processes that may be executing on the same computer or between processes that are executing on different computers tied together by a computer network so the processes that we have it may be present between the same computer and they may have to communicate with each other or you may be connected by a network and in this network, you are connected to different computers and there are different processors present in different computers.
So the communication between these processes between the same computers or even between the different computers is controlled by the operating system.
So this is one of the important services again that is provided by the operating system.
6. Error Detection
And the operating system needs to be constantly aware of possible errors that can occur so there are many kinds of errors that can occur like there are errors that can occur in the CPU there are errors that can occur in the memory and hardware or there can be errors in the input and output devices.
And so on so there are many kinds of better so let me give you an example of error here I have a printer and it said that you are printing something and then suddenly your paper runs out you are out of paper now the printer is not able to print because there is no more paper of now this is also an error and the operating system must be able to handle this kind of error.
So that it ensures correct and consistent computing now what I mean by this is that when an error occurs your system must not just break down completely and it should not just cease your computing ability completely the operating system must have a way in which it manages those errors so that your computing is consistent and it is still carried on even if some errors are encountered.
So error detection is a very important service that is provided by the operating system and also sometimes you can have error correction or debug so this is also an important thing if it can be provided by the operating system will make your computing more efficient.
7. Resource Allocation
Now the next service that is provided by the operating system is known as resource allocation now resource allocation means allocating resources to different processes or different users now what do we mean by resources the resources can be of different types it may be the CPU it may be the files it may be the input/output devices.
It may be the main memory and so on there are so many resources that you have and as I told you there are many processes running in your system and all these processes require certain resources at a certain point of time now the operating system must help in a resource allocation means it should allocate the required resource to the processes which are waiting or which are asking for those resources and it must allocate them in an efficient way.
Such that all the processes get the resources that they need and no process keeps waiting for the resource and never gets it we should not have a scenario where a process keeps waiting for a resource but it never gets.
And also we should not have a scenario where a resource is held by a particular process and it is never released so the operating system must manage how these resources are allocated and it should allocate in such a way that all the processes get the resources that they need.
And the computing takes place in an efficient manner now this resource allocation is a very important topic as far as the operating system is concerned and we will be dealing with this in more detail in the course of this lecture series now the next service that is provided by the operating system is an accounting.
Now what we mean by accounting is that we want to keep track of which users use how much and what kind of computer resources now in the previous point I already told you what our computer resources now we want to know which user uses how much and what kind of resources.
And wise is required this record-keeping may be used for accounting or simply for accumulating usage statistics so by keeping an account of this or by having statistics of this usage it can be a valuable tool for researchers who wish to reconfigure the system or to improve the computing services.
So if you want to improve your computing services you need to know how the resources are used and how it is actually working so for this purpose accounting is an important service.
9. Protection and Security
Now the next service provided by an operating system is protection and security so from the name itself we can understand what we mean by protection and security so our data should be secure and then everything that we do must be protected.
Now we can talk of this protection and security in different ways, first of all, we can talk about it in the terms of processes when processes or several different processes are executing at the same time it should not be possible for one process to interfere with the others or with the operating system.
Itself so the processes should not interfere with each other’s operation and protection involves ensuring that all access to system resources is controlled so we already know what our system resources so protection means that the access to the system resources must be controlled and talking about security we can talk about security in terms of outside access.
We should make sure that the system is not accessed from outsiders who are not allowed to access the system so this is very common in our day to day life when you use your computer systems or when you use your accounts like your email accounts or your social media accounts you make your user ID and your password and by doing that what you are doing is you are protecting your account you are authenticating yourself.
So by providing the right password, you’re authenticating yourself and only if you have provided the right password you can enter the system and the security it extends to defending your external input/output devices like modems and your network adapters and so on so you should make sure that these are prevented from invalid access attempts.
And if anybody is trying to access these devices without permission or in a wrong way then these invalid access attempts must be recorded so that you can improve your system or you can have knowledge that someone is trying to break into your system now if a system has to be protected and secure then we have to take precaution from all the angles that mean throughout the system or throughout the entire system.
We must ensure protection and security so there is a saying which goes a chain is only as strong as its weakest link it means that even if you are having a strong chain with which you are trying to secure something the strength of that chain depends upon its weakest link so in the same way even if you protect your entire system.
And you leave one area unprotected or one area not secure enough so that maybe the link through which your system may be vulnerable so protection and security have to be implemented throughout the system so those were the important system services provided by the operating system.
These are the Operating System Services. So let us take a quick recap of all the points that we discussed we discuss user interface program execution input/output operations file system manipulation communications error detection X resource allocation accounting protection and security so these are the operating system services that are mostly provided by every operating system that we have.
So I hope this was clear to you thank you for reading and see you in the next one.