Sie sind auf Seite 1von 2

CIS307: Some old exam questions

Here are some questions from my old midterms and finals. Beware: there are no gu
aranties that the future will be like the past. I provide these questions so tha
t you are not surprised at the type of question I ask, so that you can test your
selves on topics I teach, and not so that you can find here the questions I will
ask in the exams.
I also ask multiple choice questions from the ACM self-assessment tests on Opera
ting Systems and on Concurrency.
----------------------------------------------------------------Describe how you would simulate a system with the following
structure:
+<-------------------------------------+
|
|
|
+<---------------+
|
|
^
v
___ +--+
v ___ +--+
|
+---->|||->| |---->+-+-->|||->| |--->+
^
--- +--+
|
--- +--+
|
CPU
|
DISK
|
v
arrivals
departures
a) What information would you need before being able to run
your program?
b) What information would you print out during execution
of your program?
c) What summary information would you like to obtain?
----------------------------------------------------------------What are the resources shared by an operating system?
Indicate for each if it is Reusable, Consumable, or both.
----------------------------------------------------------------Often an operating system is described as a "Resource Manager".
Specify as many such resources as you can.
----------------------------------------------------------------Often an operating system is described as a "Reactive System".
Explain why.
----------------------------------------------------------------What is a monolithic kernel, and what is a micro-kernel (or
process-based kernel)?
----------------------------------------------------------------What is a Micro-Kernel Operating System Architecture?
What are its adavantages? What its disadvantages?
----------------------------------------------------------------What is a monolithic Operating System? and how does it differ
from a Layered Operating System?
----------------------------------------------------------------A modern operating system is said to be multitasking,
multithreaded, preemptive, and multiprocessing.
What does it mean?
----------------------------------------------------------------Describe what is a Kernel or Supervisor call.
----------------------------------------------------------------What is Spooling? Do you think it is a standard component
of operating systems such as Unix and NT?
----------------------------------------------------------------In the 60s operating systems started supporting Multiprogramming.
What does it mean?
-----------------------------------------------------------------

Why do computers have (at least) two modes, a user mode and
a kernel mode? How does one go from one mode to the other
and viceversa? Explain in detail then for each of the following
operations indicate if it should be done in user or kernel
mode:
(a) Read the time of day clock
(b) Set the time of day clock
(c) Start an IO operation
(d) Disable interrupts
----------------------------------------------------------------What is the distinction, if any, between Interrupts, Exceptions,
and Traps.
----------------------------------------------------------------Describe what is a process and indicate how it would be
different if on a system a service is implemented as
a process or as a library (say a DLL in Microsoft).
----------------------------------------------------------------a. What happens when a CPU receives an interrupt?
b. Why, in a single processor system, we can use
disabling of interrupts to implement critical regions?
c. How can computers use I/O devices if there are no
interrupts?
----------------------------------------------------------------I need to access a database located in LosAngeles.
A friend suggests replicating it in Philadelphia.
Why? What problem(s) will I run into if I follow this advice?
----------------------------------------------------------------Explain discrete event simulation. Be sure to indicate
what are events and what is the high level structure of the
simulation program.
----------------------------------------------------------------Using what you have learned doing the discrete event
simulation homework, describe:
(a) What is an event.
(b) What are the events in your simulation.
(c) What is the role of the agenda
(d) How did you keep track of time in the simulation.
(e) How did you compute the average queue sizes?
----------------------------------------------------------------Process P executes:
A1: X := 1;
A2: Y := 1;
If I change the order of the statements A1 and A2 I get a
process P':
A2: Y := 1;
A1: X := 1;
Is P' equivalent to P? In general, given programs P and P',
what does it mean to say that they are "Equivalent"?
----------------------------------------------------------------The state of a task in a multitasking system is described
by a diagram with three states: RUNNING, READY, BLOCKED.
Describe the meaning of each state and each transition.
-----------------------------------------------------------------

Das könnte Ihnen auch gefallen