Uploaded by Adarsh Shankar

AdarshShankar HW1

advertisement
Adarsh B Shankar
UCI ID: 11972805
COMPSCI 143A SS2
Homework 1
HOMEWORK 1
Exercise 1.1.1: Abstraction and virtualization.
Justify or refute the statements below. Give supporting examples, if
appropriate.
(a) Abstraction can be used without virtualization.
Yes, abstraction does not necessarily create a virtual object.
(b) Virtualization can be used without abstraction.
Yes, virtualization may or may not use abstraction, since it emphasizes on
diversification and replication.
(c) Abstraction and virtualization can be used together.
Yes since abstraction and virtualization are closely related, they can be used together.
Exercise 1.1.2: Multiprogramming and time-sharing.
(a) What do multiprogramming and time-sharing have in common? What are
differences between the two concepts?
Multiprogramming and time-sharing both accomplish the task of running more than one
program on a computer system. Multiprogramming is the switching of CPUs between
several programs while time-sharing involves extends this feature by switching
periodically by employing virtualization and creating the illusion of several CPUs.
Exercise 1.2.1: Interrupts and traps.
(a) What do interrupts and traps have in common? What are the differences
between the two concepts?
Interrupts are hardware raised signal to the CPU to indicate completion of a certain
process which it previously requested. Traps, on the other hand are exceptions that
occur in user processes. A trap is a software interrupt rather than a hardware interrupt.
Exercise 1.2.2: Multiprogramming, time-sharing, and interrupts.
(a)
Is multiprogramming possible without interrupts?
No it is not possible. Without interrupts, time slices cannot be created to divide the CPU
for each job or task.
(b)
Is time-sharing possible without interrupts?
No it is not possible. Without interrupts, time slices cannot be created to divide the CPU
for each job or task.
Download