Types of Services
- An Operating system provides an environment for the execution of programs.
- It provides certain services to programs and to the users of those programs.
- The specific services provided are different from one operating system to another, but we can identify common classes.
- They are as follows
- Program execution
- I/O operation
- File system manipulation
- Error detection
- Resource allocation
- The system must be able to load a program into memory and to run that program.
- The program must be able to end its execution, either normally or abnormally
I/ O operation (Input / Output operation)
- A running program may require I/O.
- This I/O may involve a file or an input output device
- For specific devices, special functions may be desired.
- For efficiency and protection, users usually cannot control I/O devices directly.
- Therefore, the operating system must provide a means to do I/O.
File - System Manipulation
- The file system is of particular interest.
- Obviously programs need to read and write files
- Programs also need to create and delete files by name.
- In many circumstances, one process needs to exchange information with another process.
- Such communication can occur in two major ways.
- The first takes place between processes that are executing on the same computer.
- The second takes place between processes that are executing on different computer systems that are tied together by a computer network.
- Communications may be implemented via shared memory, or by the technique of message passing in which packets of information are moved between processes by the operating system.
The operating system constantly needs to be aware of possible errors.
Errors may occur in the CPU and memory hardware in I /O devices and in the user program.
For each type of error, the operating system should take the appropriate action to ensure correct and consistent computing.
When multiple users are logged on the system or multiple jobs are running at the same time, resources must be allocated to each of them.
Many different types of resources are managed by the operating system.
Some may have special allocation code, whereas others may have much more general request and release code.
This tasks aims at proper use of resources available.
This feature keeps track of which users use how many and which kinds of computer resources.
This record keeping may be used for accounting or simply for accumulating usage statistics.
Usage statistics may be a valuable tool for researchers who wish to reconfigure the system to improve computing services.
The owners of information stored in a multi-user computer system may want to control use of that information.
When several disjointed processes execute concurrently, it should not be possible for one process to interfere with the others, or with the operating system itself.
Such process is performed by giving authentication to the user, by providing user name and password.