This preview shows page 1. Sign up to view the full content.
Unformatted text preview: .
Many authors do not distinguish between multiprogramming and multitasking
because both the terms refer to the same concept. However, some authors prefer to
use the term multiprogramming for multi-user systems (systems that are
simultaneously used by many users such as mainframe and server class systems),
and multitasking for single-user systems (systems that are used by only one user at
a time such as a personal computer or a notebook computer). Note that even in a
single-user system, it is not necessary that the system works Only on one job at a
time. In fact, a user of a single-user system often has multiple tasks concurrently
processed by the system. For example, while editing a file in the foreground, a
sorting job can be given in the background. Similarly, while compilation of a
program is in progress in the background, the user may be reading his/her
electronic mails in the foreground. In this manner, a user may concurrently work
on many tasks. In such a situation, the status of each of the tasks is normally
viewed on the computer's screen by partitioning the screen into a number of
windows. The progress of different tasks can be viewed on different windows in a
Hence for those who like to differentiate between multiprogramming and
multitasking, multiprogramming is the concurrent execution of multiple jobs (of
same or different users) in a multi-user system, while multitasking is the
concurrent execution of multiple jobs (often referred to as tasks of same user) in a
Threads are a popular way to improve application performance. In traditional
operating systems, the basic unit of CPU utilization is a process. Each process has
its own program counter, its own register states, its own stack, and its own address
space (memory, area allocated to it). On the other hand, in operating systems, with
threads facility, the basic unit of CPU utilization is a thread. In these operating
systems, a process consists of an address space and one or more threads of control
[see Figure 14.7(b)]. Each thread of a process has its own pr...
View Full Document
This document was uploaded on 04/07/2014.
- Spring '14