1.8k views

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
0
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.
0

@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

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

A and  B suffice multi programming concept. 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 ans is (B).

edited
+6
whats the problem with C)
+4
Option C is common to all system,it does not add to the defination of Multiprogramming.
+10
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.
0
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".
0
In option (b) & (c) immediately is implying like compulsion. If another program is not readily available then (b) & (c) cannot happen.

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

0
the point C in the question totally depends on long term scheduler. so t is common to either multiprogramming OS or normal OS
(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
In batch processing processes halt in between executions and and there is no preemptive scheduling.So option d.