Multi tasking The ability to hold several programs in RAM at one time but the user switches between them. Usually uses GUI’s. Facilitates import and export of data . Multitasking refers to the running of multiple independent computer programs on the same computer; giving the appearance that it is performing the tasks at the same time. Since most computers can do at most one or two things at one time, this is generally done via time-sharing, which means that each program uses a share of the computer's time to execute. The philosophy governing preemptive multitasking is that of ensuring that all programs are given regular time on the CPU. This implies that all programs must be limited in how much time they are allowed to spend on the CPU without being interrupted.)On many single user operating systems cooperative multitasking is perfectly adequate, as home computers generally run a small number of well tested programs. Windows NT was the first version of Microsoft

In pre-emptive multitasking. Cooperative multitasking is achieved by relying on each process to give time to the other processes in a defined manner. but it didn't reach the home user market until Windows XP.) A Multi-threaded operating system is one that allows multiple operations to be performed simultaneously. it is classified as a multitasking operating system. MS Windows prior to Windows 95 used to support cooperative multitasking Windows which enforced preemptive multitasking. All our operating systems are multi-threaded. the system is grouped under a single-tasking system. (since Windows NT was targeted at professionals. Unix-like operating systems such as Solaris and Linux support pre-emptive multitasking. while in case the operating system allows the execution of multiple tasks at one time.TYPES OF OPERATING SYSTEMS Multi-tasking and Single-tasking Operating Systems: When a single program is allowed to run at a time. . Multi-tasking can be of two types namely. pre-emptive or co-operative. the operating system slices the CPU time and dedicates one slot to each of the programs.

If one fails. . such as array processors. such as executing instructions while reading from an input device and writing to an output device. Multiprocessing is also accomplished in special-purpose computers. multiprocessing refers specifically to the concurrent execution of two or more independent streams of instructions. the other takes over. The programmer must carefully design the program in such a way that all the threads can run at the same time without interfering with each other. which provide concurrent processing on sets of data computers perform simultaneous functions.TYPES OF OPERATING SYSTEMS Simultaneous processing with two or more processors in one computer or two or more computers processing together. CPUs can also execute multiple instructions simultaneously from a single stream of instructions (see pipeline processing). When two or more computers are used. simultaneously. The ability of an operating system to execute different parts of a program. they are tied together with a high-speed channel and share the general workload between them. However. called threads.

and coding it so the job utilitzes multiple resources for execution.TYPES OF OPERATING SYSTEMS Taking a computer job/process. examples: machine has 16 cpu's. Multi-threading : Same job can be broken logically and executed simultaneously and the results are combined at the end of processing What is the difference between multitasking and multiprocessing? Multiprocessing is the use of two or more processors in a single computer. Multiprogramming is . economy of scale and increased reliability. this finishing faster. to acheive greater throughput.Most multiprocessing systems use symmetric multiprocessing. (as opposed to asymmetric) where all processes share the processing load equally. the job uses all 16 cpu's to process What is the difference between multithreading and multiprocessing? Multiprocessing : Several jobs can run at the same time. SMP. Multitasking on the other hand is best explained by first defining what multiprogramming is.

and it must wait for resources or I/O then it will sit idly which is a waste of the CPU. which is loaded in memory. Whenever a CPU is processing a program. In this way the CPU idle time is reduced. it will immediately open the next job in the queue and process that job until such time as it must wait again. such that each process appears to the user to be running at exactly the same time. Multiprogramming will store a number of 'jobs' in a queue and whenever the CPU is waiting for I/O etc while executing a particular job. Multitasking is a logical extension of multiprogramming in that instead of waiting for a process to reach a stage where it must wait for I/O or some resource. it schedules time for each process that is loaded into memory. .TYPES OF OPERATING SYSTEMS used to ensure the best effecient use of the CPU.Another name for multitasking is timesharing. and then it can select the next job in the queue or return to the previous job.