You are on page 1of 2

1.5 What is the main advantage of multiprogramming?

Answer: Multiprogramming makes efficient use of the CPU by overlapping the deman
ds
for the CPU and its I/O devices from various users. It attempts to increase CPU
utilization
by always having something for the CPU to execute.

1.10 Describe the differences between symmetric and asymmetric multiprocessing.


What are
three advantages and one disadvantage of multiprocessor systems?
Answer: Symmetric multiprocessing treats all processors as equals, and I/O can b
e processed
on any CPU. Asymmetric multiprocessing has one master CPU and the remainder
CPUs are slaves. The master distributes tasks among the slaves, and I/O is usual
ly
done by the master only. Multiprocessors can save money, by not duplicating powe
r supplies,
housings, and peripherals. They can execute programs more quickly, and can have
increased reliability. They are also more complex in both hardware and software
than
uniprocessor systems.
1.35 How does a real-time system differ from time-share?
Answer: In time-sharing, fast response is desirable, but not required. In real-t
ime systems,
processing must be completed within certain time constraints appropriate for the
system.

2.2 How does the distinction between monitor mode and user mode function as a ru
dimentary
form of protection (security) system?
Answer: By establishing a set of privileged instructions that can be executed on
ly when
in the monitor mode, the operating system is assured of controlling the entire s
ystem at all
times.
2.3 What are the differences between a trap and an interrupt? What is the use of
each function?
Answer: An interrupt is a hardware-generated change-of-flow within the system. A
n
interrupt handler is summoned to deal with the cause of the interrupt; control i
s then re-
turned to the interrupted context and instruction. A trap is a software-generate
d interrupt.
An interrupt can be used to signal the completion of an I/O to obviate the need
for device
polling. A trap can be used to call operating system routines or to catch arithm
etic errors.

2.4 For what types of operations is DMA useful? Explain your answer.
Answer: DMA is useful for transferring large quantities of data between memory a
nd
devices. It eliminates the need for the CPU to be involved in the transfer, allo
wing the
transfer to complete more quickly and the CPU to perform other tasks concurrentl
y
2.17 List some categories of privileged instructions.
Answer:
a. I/O
b. Modifying base and limit registers
c. Modifying timer
d. Halt
e. Turning interrupt enable off
f. Changing monitor/user-mode bit

3.5 What is the purpose of the command interpreter? Why is it usually separate f
rom the
kernel?
Answer: It reads commands from the user or from a file of commands and executes
them,
usually by turning them into one or more system calls. It is usually not part of
the kernel
since the command interpreter is subject to changes.
3.12 What is a command interpreter? By what other names is it known?
Answer: Program that interprets the commands you type in at terminal, or enter t
hrough
a batch file; gets and executes next user-specified command. Names: control card
interpreter,
command line interpreter, console command processor, shell.
3.13 How can command interpreters be implemented?
Answer:
a. Whole procedures in memory.
b. Procedure calls programs into memory from disk.