Which OS executes a number of programs simultaneously by a single processor?
When you approach operating system concepts there might be several confusing terms that may look similar but in fact refer to different concepts. Show
In this post, I will try to clarify four of such terms which often cause perplexity: those are multiprogramming, multiprocessing, multitasking, and multithreading. In a modern computing system, there are usually several concurrent application processes which compete for (few) resources like, for instance, the CPU. As we have already introduced, the Operating System (OS), amongst other duties, is responsible for the effective and efficient allocation of those resources. Generally speaking, the OS module which handles resource allocation is called scheduler. On the basis of the type of OS to be realized, different scheduling policies may be implemented. Following are the different properties of an Operating System. This tutorial will explain these properties in detail one by one:
Batch processingBatch processing is a technique in which an Operating System collects the programs and data together in a batch before processing starts. An operating system does the following activities related to batch processing −
Advantages
Disadvantages
MultitaskingMultitasking is when multiple jobs are executed by the CPU simultaneously by switching between them. Switches occur so frequently that the users may interact with each program while it is running. An OS does the following activities related to multitasking −
MultiprogrammingSharing the processor, when two or more programs reside in memory at the same time, is referred as multiprogramming. Multiprogramming assumes a single shared processor. Multiprogramming increases CPU utilization by organizing jobs so that the CPU always has one to execute. The following figure shows the memory layout for a multiprogramming system. An OS does the following activities related to multiprogramming.
Advantages
Disadvantages
InteractivityInteractivity refers to the ability of users to interact with a computer system. An Operating system does the following activities related to interactivity −
The response time of the OS needs to be short, since the user submits and waits for the result. Real Time SystemReal-time systems are usually dedicated, embedded systems. An operating system does the following activities related to real-time system activity.
Distributed EnvironmentA distributed environment refers to multiple independent CPUs or processors in a computer system. An operating system does the following activities related to distributed environment −
SpoolingSpooling is an acronym for simultaneous peripheral operations on line. Spooling refers to putting data of various I/O jobs in a buffer. This buffer is a special area in memory or hard disk which is accessible to I/O devices. An operating system does the following activities related to distributed environment −
|