• Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar
  • Skip to footer

Computer Notes

Library
    • Computer Fundamental
    • Computer Memory
    • DBMS Tutorial
    • Operating System
    • Computer Networking
    • C Programming
    • C++ Programming
    • Java Programming
    • C# Programming
    • SQL Tutorial
    • Management Tutorial
    • Computer Graphics
    • Compiler Design
    • Style Sheet
    • JavaScript Tutorial
    • Html Tutorial
    • Wordpress Tutorial
    • Python Tutorial
    • PHP Tutorial
    • JSP Tutorial
    • AngularJS Tutorial
    • Data Structures
    • E Commerce Tutorial
    • Visual Basic
    • Structs2 Tutorial
    • Digital Electronics
    • Internet Terms
    • Servlet Tutorial
    • Software Engineering
    • Interviews Questions
    • Basic Terms
    • Troubleshooting
Menu

Header Right

Home » Fundamental » OS » Definition of Multitasking Operating System
Next →
← Prev

Definition of Multitasking Operating System

By Dinesh Thakur

In earlier days, Computers was programmed to solve the problem. More prior day’s computer could perform only one job at a time. This computation resulted least CPU utilization. Most of time CPU was idle. To use CPU more efficiently, computer crossed many stages of evaluation.

In 1950 first operating system known as the batch operating system was introduced. Batch Operating System could execute a group of jobs in the form of a single deck of punched card.

Batch processing system was inefficient because of most of the time of processes was wasted in waiting of I/O resources. Hence CPU utilization degraded. To accelerate the CPU utilization in 1960 new operating system introduced by the designer.This OS was a turning point towards the growth of computer. Multi-programming Operating system introduced a new concept for CPU utilization.

Multi-programming OS runs the multiple programs. But in reality, CPU can execute a single application at a given time. If a system has two or more processes.One process was waiting for I/O operation to complete, the second job could use the idle CPU for execution. It increased the CPU utilization.

Multitasking term used in a modern computer system. Multitasking is a logical extension of multiprogramming system that supports multiple programs to run concurrently. In multitasking more than one task are executed at the same time. In this technique the multiple tasks, also known as processes, share common processing resources such as a CPU. In the case of a computer with single CPU, only one job can be processed at a time. Multitasking solves the problem by scheduling and deciding which task should be the running task and when a waiting task should get turn. This attempt is done with the help of interrupt (a signal) which is attended by CPU by keeping the current activity aside, saves its present status in buffer and returns to another important job whatever task it was doing earlier. The act of re-assigning a CPU from one task to another one is known as context switch.

The multitasking systems were developed to provide interactive use of a computer system. This system uses the CPU scheduling and multi-programming to provide each user with a small portion of a time-shared computer. Thus multitasking makes the best possible use of available hardware at any given instance of time and improves the overall efficiency of computer system. A multi-tasking operating system is characterized by its capability to support the concurrent execution of more than one task. This is achieved by simultaneous management of several processes in the main memory at the same time and by availing I/O resources among-est the active tasks. The multi-tasking OS monitors the state of all the tasks and of the system resources.

Multitasking provides the fundamental mechanism for an application to control and react to multiple, discrete real-world events and is therefore essential for many real-time applications. A multitasking environment allows applications to be constructed as a set of independent tasks, each with a separate thread of execution and its own set of system resources. The inter-task communication facilities allow these tasks to synchronize and coordinate their activity. Multitasking creates the appearance of many threads of execution running concurrently when, in fact, the kernel interleaves their execution on the basis of a scheduling algorithm. This also leads to efficient utilization of the CPU time and is essential for many embedded applications where processors are limited in computing speed due to cost, power, silicon area and other constraints. In a multi-tasking operating system, it is assumed that the various tasks are to cooperate to serve the requirements of the overall system Co-operation will require that the tasks communicate with each other and share common data in an orderly and disciplined manner, without creating the contention and deadlocks.

Two Types of Multitasking OS

1) Pre-Emptive Multitasking OS: In this OS, the process gets preempted after time quantum.

2) Co-operative Multitasking OS: It is also known as Non-Preemptive OS. In this OS, processes are preemptive after a fixed interval of time. The process can voluntarily control CPU or when CPU idle enables multiple applications to be run concurrently. In Cooperative Multitasking OS, all programs cooperate for the entire scheduling scheme to work. In this OS Process Scheduler of an operating system is known as a cooperative scheduler.

Memory Protection: To protect the memory, so that process’s memory location can’t be modified by another process Memory Management Unit hardware device used. MMU helps the kernel to take the appropriate action regarding memory allocation and de-allocation request.

Difference between Multitasking and Multi-programming Operating System

Multitasking OS   Multi-programming OS
•  The program divided into the fixed size of pages.  • The whole program loaded into memory.
•  Context switching takes place after a fixed interval of time.  • Not fixed time of interval consider.
•  The concept used in modern computing.

  • The concept used in an old computer system.

You’ll also like:

  1. What is Operating System and its types? Definition
  2. Definition of Multiprogramming Operating System
  3. Definition of Distributed Operating System
  4. Definition Multiprocessor Operating System
  5. What is Kernel (Operating System)? – Definition
Next →
← Prev
Like/Subscribe us for latest updates     

About Dinesh Thakur
Dinesh ThakurDinesh Thakur holds an B.C.A, MCDBA, MCSD certifications. Dinesh authors the hugely popular Computer Notes blog. Where he writes how-to guides around Computer fundamental , computer software, Computer programming, and web apps.

Dinesh Thakur is a Freelance Writer who helps different clients from all over the globe. Dinesh has written over 500+ blogs, 30+ eBooks, and 10000+ Posts for all types of clients.


For any type of query or something that you think is missing, please feel free to Contact us.


Primary Sidebar

Operating System

Operating System & Types

    • Operating System - Software
    • Operating System - Definition
    • Operating System - Types
    • Operating System - Functions
    • Operating System - Characteristics
    • Operating System - Services
    • Operating System - Multiprogramming
    • Operating System - Time Sharing
    • Operating System - Multiprocessor
    • Operating System - Distributed
    • Operating System - Batch Processing
    • Operating System - Real-Time
    • Operating System - Multitasking
    • Operating System - Network(NOS)
    • Operating System - Multi-User
    • Operating System - Batch
    • Operating System - External Structure
    • Operating System - MS-DOS
    • Operating System - System Software
    • Operating System - Kernel
    • Operating System - Main Functions

Operating System Scheduling

    • Operating System - Scheduling
    • Operating System - Disk Scheduling
    • Operating System - Process
    • Operating System - Round Robin
    • Operating System - CPU Scheduling
    • Operating System - (FCFS) Scheduling
    • Operating System - Preemptive
    • Operating System - Priority Scheduling

Memory

    • Operating System - Memory
    • Operating System - Cache Memory
    • Operating System - Virtual Memory
    • Operating System - Memory Partition

Operating System - What is

    • Operating System - Booting
    • Operating System - Files & Types
    • Operating System - Shell
    • Operating System - Real Time System
    • Operating System - Demand Paging
    • Operating System - Multi Tasking
    • Operating System - Parallel Processing
    • Operating System - Swapping
    • Operating System - Spooling
    • Operating System - App Software
    • Operating System - Dead Lock
    • Operating System - Batch Processing
    • Operating System - Semaphore
    • Operating System - Variable Partitioned
    • Operating System - File System
    • Operating System - Cipher Text
    • Operating System - OS/2
    • Operating System - CONFIG.SYS
    • Operating System - Segmentation
    • Operating System - CLI

Some Other Tutorials

  • OS - Application Vs System Software
  • OS - Commands in DOS
  • OS - Process States
  • OS - System Components
  • OS - Inter-Process
  • OS - Computer Languages
  • OS - System Architecture
  • OS - Directory Structure
  • OS - Process Management
  • OS - Deadlock Prevention
  • OS - Thread Vs Process
  • OS - File Sharing

Other Links

  • Operating System - PDF Version

Footer

Basic Course

  • Computer Fundamental
  • Computer Networking
  • Operating System
  • Database System
  • Computer Graphics
  • Management System
  • Software Engineering
  • Digital Electronics
  • Electronic Commerce
  • Compiler Design
  • Troubleshooting

Programming

  • Java Programming
  • Structured Query (SQL)
  • C Programming
  • C++ Programming
  • Visual Basic
  • Data Structures
  • Struts 2
  • Java Servlet
  • C# Programming
  • Basic Terms
  • Interviews

World Wide Web

  • Internet
  • Java Script
  • HTML Language
  • Cascading Style Sheet
  • Java Server Pages
  • Wordpress
  • PHP
  • Python Tutorial
  • AngularJS
  • Troubleshooting

 About Us |  Contact Us |  FAQ

Dinesh Thakur is a Technology Columinist and founder of Computer Notes.

Copyright © 2025. All Rights Reserved.

APPLY FOR ONLINE JOB IN BIGGEST CRYPTO COMPANIES
APPLY NOW