New Page 1
Welcome to basicsofcomputer.com
 

Share This Free Knowledge With Your Friends:

Home » Threads and CPU Scheduling » Definition and Explanation of Multiprogramming in Operating system

Definition and Explanation of Multiprogramming in Operating system:

The operating system can make the computer more productive by switching the CPU among processes. The objective of multiprogramming is to have some process running at all times. This should maximize CPU utilization. If there is only one processor (or CPU) then there will only be one process in a running state at any given time. If there are more processes that need to be run, they will have to wait. There must be some mechanism to select which process (currently in memory) will run next when the CPU becomes available.

The operating system maintains a ready-queue. Processes on this queue are ready to be executed. Whenever a currently executing process needs to wait (does I/O etc.), operating system picks a process from the ready queue and assigns the CPU to that process.

Scheduling is a fundamental operating system function. CPU is an important resource. It is very important to develop good scheduling algorithms.

Example:

Suppose we have two processes A and B. Each process executes for one second then waits for one second. It is repeated 60 times. If we run process A first and then process B, one after the other, it will take four minutes to run the two processes: A takes two minutes to run and then B takes two minutes to run. We actually compute only two minutes of this time. The other two minutes are idle time. Our CPU utilization is only 50%.

Relevant Articles:

Introduction to threads/Lightweight Process
Advantages of Multithreading
Multithreading Models in Operating System
Definition and Explanation of CPU Scheduling in Operating system
Definition and Explanation of Multiprogramming in Operating system
Scheduling Objectives in Process
CPU I/O Burst Cycle
CPU Scheduler in operating systems
Preemptive and Non-Preemptive Scheduling
Interval Timer
Dispatcher in Operating System
Scheduling Criteria in Operating System
Scheduling Algorithms in Operating System
Multiple Processor Scheduling in Operating System
Real-Time Scheduling in Operating System
Algorithm Evaluation in Operating System
 
New Page 1

Basic Computer Science

   
» The Age of Information

» Types of Computer and Digital Age

» Input and Output Devices

» Storage Devices Of Computer

» Central Processing Unit

» Software: The Power Behind The Power

» Data Communication and Computer Networks

» The Nature Of Information

» The System Theory

» Transaction Processing System (TPS) and Management Information System (MIS)

» Decision Support System (DSS) and Executive Support System (ESS)

» Expert System (ES) and Office Information System (OIS)

 

Operating Systems

   
» Introduction to Operating System

» Introduction to Process Management

» Threads and CPU Scheduling

» Process Synchronization in Operating System

» Deadlocks

» Memory Management in Operating System

» Virtual Memory in Operating System

» File System Management in Operating System

» I/O and Device Management

» Security

» Linux Operating System

 

Database Management System

   
» Introduction to Database Systems

» Database System Architecture

» Database Administration and Database Development Process

» The Entity-Relationship Model

» Semantic Object Model

» Logical Database Design and Relational Data Model

» Normalization in Database

» Transformation of E-R Model into Relational Data Model

» Representing Semantic Object Model and Types of Semantic Object Model

» Physical Database Design

» Introduction to Structured Query Language (SQL)

» Implementation of Relational Database and Database Application Design

» Client Server Database Systems & Open Database Connectivity (ODBC)

 

Questions and Answers

   
» Basics of Information Technology

» Computer Architecture

» Data Communication

» Information Networks

» Fundamentals of the Internet

» Application and Uses of Computer

» Security, Copyright and The Law

» Windows Operating Systems

» Spreadsheet Software

» Process Management in CPU

» CPU Scheduling

» Process Synchronization

» Deadlocks

» Memory Management

» Database Systems

» Database System Architecture

» Database Administration and Database Development Process
 
 
New Page 1
 

Home                Dictionary                 Contact us                   About us                    Privacy policy                  Link to us                   Advertise

Copy right ©  2012