The operating system is the software that mediates between the applications programs and a level of instructions nearer to the machine's operations. In other words, it is "software that controls the execution of a computer program, and that may provide scheduling, debugging, input/output control, accounting, compilation, storage assignment, data management, and related services".
Operating system software is written specifically for the type of function the computer is going to be used for. Generally, the more complex the function is, the more complicated the operating system will be., There are many types of operating systems available: some are made to work on a variety of different types of hardware, and some are designed for only one specific type of machine. Mainframe and minicomputers generally have their own proprietory operating systems. In the early days of personal computing, all operating systems were single user. Apple, Amiga, Commodore and IBM are all computer hardware manufacturers with machines that run different single-user operating systems. The most commonly used operating system in the world today runs on the IBM PC. This is the Microsoft disk operating system (MS-DOS). Since 1980s, DOS has been improved and refined many times:
A second type of operating system, described as multitasking, is still only capable of having one user but more than one task, operating at a time. The main task that requires the user's attention (for example a Word processing program) remains on the computer monitor, while the other task is working away in the background. The background process could be a complex statistical analysis program that takes a long time to complete, and the user could spend the waiting time for some other work. A multitasking successor to DOS is called Operating System 2 (OS 2).
Microsoft has gone on to develop its Windows environment, an operating system with multitasking and other advanced capabilities. Multitasking operating system must divide the CPU resources between the different tasks. In addition, multitasking itself is a more sophisticated operating system than the single user type, and can take more CPU resources just to run,