in Operating System edited by
12,657 views
44 votes
44 votes

Which combination of the following features will suffice to characterize an OS as a multi-programmed OS?

  1. More than one program may be loaded into main memory at the same time for execution
  2. If a program waits for certain events such as I/O, another program is immediately scheduled for execution
  3. If the execution of a program terminates, another program is immediately scheduled for execution.
  1. (a)
  2. (a) and (b)
  3. (a) and (c)
  4. (a), (b) and (c)
in Operating System edited by
12.7k views

3 Comments

a should be correct. The word "immediately" in point b raises doubt on option b.If there are n process and all are doing I/O simultaneously,then how will CPU cannot immediately schedule the new process.

Or if one process goto I/O ,then selecting the another process to run ,may take time,it cannot be done immediately.
1
1

@Rahul

a) alone does not suffice multiprogramming environment, lets suppose you load MM with sufficient number of processes but whenever some process go for i/o, processor waits until that process does not complete its i/o, this scenario does not resemble multiprogramming enviorement

6
6
You are correct.Thanks.But will it schedule other process immediately?This is concerning me
2
2

5 Answers

62 votes
62 votes
Best answer

(A) and  (B) suffice multi-programming concepts. For multi-programming, more than one program should be in memory and if any program goes for IO another can be scheduled to use CPU as shown below:

So the answer is (B).

edited by

14 Comments

whats the problem with C)
9
9
Option C is common to all system,it does not add to the defination of Multiprogramming.
29
29
The word "immediately" able to cancel this option. Because after completion of any process may be some interrupt service routine executed by cpu. So every time this statement will true that after completion of a  program immediately sheduled another program.

It think so, please correct me if i am wrong.
33
33
Yes you r correct, if there no process in queue then the CPU befomes idel when a process get over. So "immediately" is not the correct word in both B and C. They can use "may" inplace of "immediately".
1
1
In option (b) & (c) immediately is implying like compulsion. If another program is not readily available then (b) & (c) cannot happen.
0
0

Ref:

33
33

C If the execution of a program terminates, another program is immediately scheduled for execution.

@Shaik Masthan

This may not be always true  in Multiprogramming enviorment because if we have n processes n-1 goes to I/O and 1 is running on cpu noone in ready queue as all other in I/O queue ..when that process leave cpu immediate scheduling of new process may not happen right ???

0
0
we have to use that statement in the context where

" There are always some jobs waiting for execution "

Even though you don't have multi-programed OS, the existed OS, should pick one more process if execution of running process is completed !
0
0
okkk..means it is true for multiprogramming env ..but need not be included in sufficient condition to declare multiprog env right ?
1st 2 conditions are necc and suffice ..3rd one is neither necc nor succ ?
0
0

3rd one is neither necc nor succ ?

3$^{rd}$ one is necessary condition for any type o OS, i mean it is Batch,Multiprogramming,Multi Tasking,...

1
1

WHy we should use this  statement

If the execution of a program terminates, another program is immediately scheduled for execution.

in this context only

" There are always some jobs waiting for execution "  

0
0

@Shaik Masthan

both option b and c will be true only when we have said that :

"there is always one/more processes in the ready state"?

0
0
the question is " suffice to characterize an OS as a multi-programmed OS "

 

option B is only correct... with Statement A and option C, we can't guaranteed it should be multi-programmed OS, because Statement C is common for every type of OS.

please refer my previous comments.
0
0
Why so much debate? What was the gate-accepted answer to this question?
0
0
13 votes
13 votes

Based on

The primary reason multiprogramming operating system was developed and the reason they are popular, is that they enable the CPU to be utilized more efficiently. If the operating system can quickly switch the CPU to another task whenever the being worked in requires relatively slow input, output or storage operations, then CPU is not allowed to stand idle.

This mean that more can be accomplished a given amount of time. For example, if a disk drive that task can be delegated to channel and the CPU can be put to work in another program while the data are being read in multiprogramming is thus an effective way the fast-working CPU most busy with computations while slower input, output and storage operation are being carried out.

D will be correct choice

3 Comments

the point C in the question totally depends on long term scheduler. so t is common to either multiprogramming OS or normal OS
1
1
For scheduling the process, the decission is taken by Short Term Sceduler isn't it ?
0
0
Yes Short Term Scheduler uses dispatcher to schedule the process
0
0
11 votes
11 votes
(a) More than one program may be loaded into main memory 
   at the same time for execution. 
True: Only done in a multiprogrammed OS, not in single
       programmed OS

(b) If a program waits for certain events such as I/O, 
   another program is immediately scheduled for execution.
True: Only done in a multiprogrammed OS, not in single
       programmed OS
 
(c) If the execution of program terminates, another program 
   is immediately scheduled for execution. 
False: Done in both Multiprogrammed and single
       programmed OSs

ref: http://www.geeksforgeeks.org/gate-gate-cs-2002-question-46/

1 comment

(c) in uni programming environment after executing a process we need to load a process from secondary storage which violates the given point  ""If the execution of program terminates, another program is immediately scheduled for execution""

0
0
1 vote
1 vote
The questions asks for sufficient conditions only

so A & B are sufficient

and C is done by every other type of OS if other processes are ready for execution.
by
Answer:

Related questions