Full transcript
0:00In this lecture, we will study operating system services.
0:04So, we know that an operating system provides
0:07an environment for the execution of programs.
0:09And it also provides certain services to programs
0:13and to the users of those programs.
0:15So, in this lecture we will see,
0:17what are the services provided by the operating system
0:21to the programs and the users of the programs
0:25Alright! So, let's see!
0:26So the first one is the user interface.
0:29Now, this is one of the most important services provided by the operating system.
0:33Now, what is this user interface?
0:35The user interface is something that allows the user to interact with operating system.
0:43Almost all operating systems have a user interface.
0:47And the user interface can take several forms.
0:50Like the command line interface, also known as CLI,
0:53or the graphical user interface, known as the GUI.
0:57Now, examples of command line interface are like your command prompt,
1:00that you have in Microsoft Windows,
1:02or the terminal that you have in your Ubuntu based system.
1:05So in this command line interface, what you do is
1:08you provide text based commands using your keyboard
1:12in order to perform a certain task by the operating system.
1:15And the most commonly used user interface is
1:18the graphical user interface or the GUI.
1:21It is an interface where you have a windows system with a pointing device like a mouse
1:28then you have the menus and you can click those menus
1:31and also you can provide inputs using your keyboard.
1:34So, this is the most commonly used and the most user friendly interface that we have.
1:41So, this is the first and one of the most important
1:44services that are provided by the operating system.
1:46Now the next service that is provided by the operating system is
1:50program execution.
1:51Now, we know what are programs and what is software.
1:55So, the operating system must provide
1:57for the execution of the programs.
2:00That means you should be able to run or execute your programs and software.
2:05The system must be able to load the program into memory,
2:08and it should be able to run that program.
2:11So, this is also another very important service
2:13that should be provided by the operating system.
2:16Now the next service that is provided by an operating system
2:19is the I/O operation or the input/output operations.
2:22Now a running program that you have may require I/O, which may involves
2:27files or input/output devices.
2:29And this input/output operations should be provided by the operating system.
2:34A user cannot directly control the input/output devices.
2:39Now you may think that when you are using your keyboards, and mouse
2:43you feel like you are controlling it by yourself directly.
2:46But there is an operating system between you and your system,
2:50that actually controls the usage of the I/O devices.
2:54So, this I/O operation is also one of the most important operations
2:58that are provided by the operating system
3:00So, here I have shown you some example of input devices.
3:04Like keyboards, mouse and other inputs.
3:07And here you have the output devices.
3:09like your monitors, printers, speakers and so on.
3:13So, you have your operating system in between you, your programs
3:20and the I/O devices which help in the usage of these I/O devices properties.
3:25So, that is what we mean by I/O operations,
3:28which is also an important service provided by the operating system.
3:31Now the next service that is provided by the operating system is known as
3:35file system manipulation.
3:37So, this is also an important service.
3:39File system manipulation or file system management involves files.
3:44Now there are many files and directories in your system
3:47that have to be used.
3:48Now, the operating system must control
3:50how these files are manipulated or managed.
3:54Sometimes you may have to create, delete or modify,
4:02or sometimes you may have to search for a given file.
4:04So, all these are controlled by the operating system.
4:07And also it controls the permission that is given to certain programs or users
4:13for the access of certain files.
4:15So, all the files that you have
4:17cannot be allowed to be used by every program or by every user.
4:21There are access restrictions.
4:23So, this restriction of access is also controlled by the operating system.
4:28The another important service that is provided by the operating system,
4:32is file system manipulation.
4:35Now the next service that is provided by
4:36the operating system is communications.
4:39Now, from the name itself, you may already understand what is communication.
4:42We already know what is communication.
4:44But here what we mean is
4:47communication between processes.
4:50So, in the last lecture, I have already told you what is a process.
4:54So, a problem that is in execution is known as a process.
4:57Now, there are many processes that are present,
5:00and these processes often need to communicate with each other.
5:05So that they can synchronize with each other
5:07and their execution can be done in an efficient way.
5:11So, there are many circumstances in which one process
5:14needs to exchange information with another process.
5:17So, such communications may occur between processes.
5:21that may be executing on the same computer
5:23or between processes that are executing on different computers
5:27tied together by a computer network.
5:29So, the processes that we have
5:31may be present between the same computer
5:34and they may have to communicate with each other
5:36or may be connected by a network,
5:39and in this network they are connected to different computers,
5:42and there are different processes present in different computers.
5:45So, the communication between these processes
5:48between the same computers or even between the different computers
5:52is controlled by the operating system.
5:55So this is one of the important services that are provided by the operating system.
6:01Now the next service that is provided by the operating system is known as
6:04error detection.
6:06Now errors can always occur in the course of computing.
6:09And the operating system needs to be constantly aware of
6:12possible errors that can occur.
6:14So, there can be many kinds of errors that can occur.
6:16Like there are errors that can occur in the CPU.
6:19There are errors that can occur in the memory, and the hardware
6:22or there can be errors in the input or output devices.
6:25and so on.
6:26So, there are many kinds of errors.
6:27So, let me give you an example of an error,
6:29Here I have a printer and let's say that you are printing something
6:33and suddenly the paper runs out.
6:36Now, the printer is not able to print
6:38because there is no more paper available.
6:41Now, this is also an error.
6:43And the operating system must be able to handle this kind of error.
6:46So, that it ensures correct and consistent computing.
6:50Now what I mean by this is that
6:51when an error occurs your system must not just break down completely
6:55and it should not just seize your computing ability completely.
6:59The operating system must have a way
7:02in which it manages those errors
7:04so that your computing is consistent
7:07and it is still carried on even if some errors are encountered.
7:11So, error detection is a very important
7:13service that is provided by the operating system.
7:16And also sometimes you can have error correction or debug.
7:20So this is also an important thing provided by the operating system.
7:24It will make your computing more efficient.
7:27Now the next service that is provided by the operating system is known as
7:30resource allocation.
7:32Now resource allocation means
7:34allocating resources to different processes to different users.
7:38Now, what do we mean by resources?
7:40Resources can be of different types.
7:42It may be the CPU,
7:43It may be the files,
7:45It may be the input/output devices,
7:47It may be the main memory and so on.
7:49There are so many resources that you have.
7:51And as I told you there are many processes running in your system.
7:55And all the processes require certain resources at a certain point of time.
8:00Now, the operating system must help in resource allocation.
8:03It means that it should allocate the required resource to the processes,
8:07which are waiting or asking for those resources.
8:11And it must allocate them in an efficient way such that
8:15all the processes get the resources that they need
8:18and no process keeps waiting for the resource and never gets it.
8:22We should not have a scenario where a process keeps waiting for a resource
8:26but it never gets it.
8:27And also we should not have a scenario where
8:30a resource is held by particular process
8:32and it is never released.
8:34So, the operating system must manage how these resources are allocated.
8:39It should be allocated in such a way that
8:42all the processes get the resources that they need
8:45and computing takes place in an efficient manner.
8:48Now this resource allocation is a very important topic
8:51as far as operating system is concerned
8:53and we will be dealing with this in more detail
8:56in the course of this lecture series.
8:58Now the next service provided by the operating system is accounting.
9:02Now what we mean by accounting is that
9:04we want to keep track of which user use how much and what kind of resources.
9:11Now in the previous point I already told you
9:14what are computer resources.
9:15Now we want to know which user use how much and what kind of resources.
9:20And why is this required?
9:22This record keeping may be used for
9:24accounting or simply for accumulating usage statistics.
9:28So, by keeping an account of this
9:30or by having a statistics of this usage
9:32it can be a valuable tool for researchers who wish to reconfigure the system
9:37or to improve the computing services.
9:39So, if you want to improve your computing services
9:42you need to know how the resources are used and how they actually work.
9:46So for this purpose accounting is an important service.
9:50Now the next service provided by an operating system is
9:53protection and security.
9:54So by the name itself we can understand
9:56what we mean by protection and security.
9:58So, our data should be secure.
10:00And everything that we do must be protected.
10:04Now we can talk about these protection and security in different ways.
10:07First of all we can talk about it in the terms of processes.
10:11when several different processes are executing at the same time.
10:16It should not be possible for one process
10:18to interfere with the others
10:20or with the operating system.
10:22So the processes should not interfere with each others operation.
10:26And protection involves ensuring that
10:29all access to system resources are controlled.
10:32We already know what are system resources.
10:34protection means that access to the system resources must be controlled.
10:39And talking about security
10:40We can talk about security in terms of outside access.
10:44We should make sure that
10:46the system is not accessible to outsiders
10:49who are not allowed to access the system.
10:52So this is very common in our day to day lives
10:55when you used your computer system or when you used your accounts
10:58like your email accounts, or your social media accounts.
11:01You make your user id and password.
11:03And by doing that what you are doing is you are protecting your account.
11:07You are authenticating yourself by providing the right password.
11:13And only if you have provided the right password you can enter the system.
11:17And the security it extends to defend your external input/output devices
11:22like modems, and your network adapter and so on
11:25So you should make sure that
11:27these are prevented from invalid access attempts.
11:31And if anybody tries to access these devices
11:34without permission or in a wrong way
11:36then this invalid access attempt must be recorded
11:41so that you can improve your system
11:42or you can have knowledge that someone is trying to break into your system
11:46Now if a system has to be protected and secured
11:49then we have to take precautions
11:51from all the angles.
11:53that means throughout the entire system
11:56We must ensure protection and security.
11:59So, there is same which goes,
12:01A chain is only as strong as its weakest link
12:05It means that even if you are having a strong chain
12:08with which you are trying to secure something
12:10the strength of the chain depends upon its weakest link.
12:14So, even if you protect your entire system
12:17and you leave one area unprotected or
12:20one area not secure enough
12:23so that may be the link through which your system may be vulnerable.
12:27So protection and security have to be implemented throughout the system.
12:32So those were the important system services
12:35provided by the operating system.
12:36So, let us take a quick recap of all the points that we have discussed.
12:39We discussed about the user interface, program execution,
12:43input/output operation, file system manipulation
12:46communication, error detection, resource allocation,
12:50accounting, protection, and security.
12:53So these are the operating system services
12:56that are mostly provided by every operating system that we have.
13:01So, I hope this was clear to you.
13:03Thank you for watching and see you in the next one.