The operating system is provided for the convenience of the programmer, to make the programming task easier.  Here, is the view of operating system services.  PROGRAM EXECUTION - The system must be able to load a program into memory and run the program. The program must be able to end its execution, either normally or forcefully.  I/O OPERATION - I/O may involve a file or an I/O device. Special functions may be desired ( such as rewinding a tape drive, or blanking a CRT screen). I/O devices are controlled by O.S  FILE SYSTEMS - The file system program reads, writes, creates and deletes files by name.  COMMUNICATIONS - Communication may be implemented via shared memory, or by the technique of message passing.  RESOURCE ALLOCATION - When multiple users are logged on the system or multiple jobs are running at the same time, resources such as CPU cycles, main memory, file storage etc. must be allocated to each of them.  ACCOUNTING - To keep track of which user uses how many and what kinds of computer resources. This record-keeping may be used for accounting.  ERROR DETECTION - error may occur in the CPU and memory hardware, in I/O devices, and in the user program. O.S should take appropriate action to resolve these errors.  PROTECTION AND SECURITY - Concurrent processes should not conflict with one another because the owners of information stored in a multiuser or networked computer system may want to regulate how that information is used.