review sheet for the final

advertisement
CS 450, FINAL
Fall 2003
Review sheet
December 9th, 8:00 – 10:00 am
Style and format of exam: (100 pts total):
1) Written definitions: you will be required to give the definition for particular
terms that I think are particularly important: Terms will be selected from the
set of terms provided (DEFINITELY 100%)
2) SHORT ANSWER: concepts, what if, why, discuss type questions similar to
the first exam. (DEFINITELY 100%)
Chapters from your text_book:
1. Chapter 1: entire chapter: all sections. What is an operating system. What are
the primary responsibilities of an OS.: supporting convenient use and controlling
sharing of resources, User interface, process management, job and session
management, device management, time management, memory management, file
management, error handling, reliability and security, monitoring and accounting,
system management.
2. Chapter 2: History of Operating systems: all sections. You should understand
the major types of operating systems, how operating systems evolved, why they
evolved, features of the different CATAGORIES of operating systems. How did
punched cards, magnetic tapes, JCL, magnetic disks, and professional operators
revolutionize computing, and how did they help lead to the evolution of operating
systems. Know the importance of the “resident loader” (resident monitor).
Understand the concepts of multiprogramming, spooling, and multitasking. What is
meant by BATCH computing? What is a batch operating system. Important
operating systems to know: OS/360, Input/Output system by GM, Master Control
program (burroughs), Multics, UNIX, CP/M, MS/DOS, MVS, VMS
Questions to consider:
2.6, 2.1, 2.5
3. Chapter 3: The user and program interface: (Entire Chapter, especially
sections 3.1 -3.3, 3.5 – 3.7) you should be able to discuss issues pertinent to user
interface design: What is a command line interface .vs. a graphical user interface.
What is the function of the user interface .vs. the program interface. Different user
interface types: batch, teletype, alphanumeric, graphic, multimedia, command
line…qualities found in good interfaces (page 14): consistency, naturalness…
4. Chapter 4: process management: entire chapter!!! - very important chapter-You must understand what is a process, and what are the different types of processes
and what are their characteristics. It is important to understand what it means to
execute processes in an interleaved fashion. What is the role of the PCB? What is
the context of a process? Understand what is a process state. What are the different
process states? What causes a transition from one state to another.. focus on diagram
4-4 on page 9. Be able to discuss the various operations that can be performed on
processes, and what they involve (especially creation and termination).
Questions to consider:
4.5, 4.7, 4.8
5. Chapter 5: Process scheduling: !!!! entire chapter, very important!!!!! --- Know
the 3 types of scheduling that can be performed and what each type of scheduling
accomplishes. (long-term, short-term, medium-term), know the types of scheduling
which must occur in the 3 major types of operating systems (real-time, batch, and
interactive). Know the scheduling objectives that are often used in the evaluation of
scheduling algorithms. Why is calculating the average waiting time important in
assessing an algorithm. Understand the concept of aging!!! Understand what it
means for a process to be CPU bound .vs. I/O bound. BE ABLE TO EXPLAIN,
EACH OF THE FOLLOWING SCHEDULING ALGORITHMS. Also be able
to estimate the average waiting time for a set of processes.. FIFO, shortest job
next, shortest time remaining next, round robin (fifo), priority round robin,
feed back queues, selfish scheduling, fair-share scheduling,
Questions to consider:
5.2, 5.3, 5.4, 5.7, 5.8, 5.9
6. Chapter 6: Interrupts:
Terms:
Interrupt
Interrupt handler
Interrupt Vector
Concepts:
1. KNOW THE ISSUES INVOLVED IN HANDLING INTERRUPTS:
1. SAVING THE STATE
2. LINKING TO THE INTERRUPT
3. HANDLING PARAMETERS
4. RESOURCE USE AND PROCEDURE CALLS
5. HANDLING OTHER INTERRUPTS
2. Understand how interrupts affect the flow of control within a program
3. Know the different categories of interrupts: i/O, alert, timer, machine faults,
system request interrupts, program fault interrupts.
Questions to review:
1, and 3
Instructors notes & slides:
Power point slides on Interrupts.
Chapter 7 – Memory management
Terms:
Memory Management
Allocation
Relocation
Protection
Static Allocation
Dynamic Allocation
Static memory Area Definition
Dynamic memory area definition
Fixed partitions
Regions
Fragmentation
Statically defined partitions
Dynamically defined regions
Memory control block
Boundary tag method
First Fit
Best fit
Next fit
Worst fit
buddy system
Relocation dictionary
Based Addressing
Fence address
Bounds registers
Protection keys
Swapping
Overlays
Compaction
Concepts:
1. Understand the three main issues involving memory management: Allocation,
Relocation, and protection.
2. Understand STATIC vs DYNAMIC ALLOCATION of memory
3. understand static memory area definition and dynamic memory area
definition
4. Under static allocation techniques: understand statically defined partitions and
dynamically defined regions
5. Under dynamic allocation techniques: boundary tag method, first_fit, next_fit,
best_fit, worst_fit
6. For protection strategies understand: fence addresses, bounds registers,
Questions to Review:
1, 2, 3, 4, 6, 9, 11, 12
Instructors notes and slides:
Power point slides on memory Management
Chapter 8 – time management
Terms:
Clock
programmable clocks
hardware clocks
Clock drivers
time-of-day services
timer queues
Understand the various types of timing services – beginning on page 9 in chapter 8
Concepts:
1. Understand the different types of clocks
2. Understand some of the basic issues with respect to time of day services
3. Timer queues!!! and their use in managing program timing needs
4. Be able to list various types of time related services that a system might be
required to provide, from the end of the chapter.
Questions to Review:
1, 3, 4
Instructors notes and slides:
There are both lecture notes and power point slides on time management
Chapter 9 – I/O Devices:
Terms:
Device Drivers
Blocking
Character devices
I/O controller
Block devices
Concepts:
1. Understand the differences between character devices and block devices.
2. Role of a device driver in performing I/O
Chapter 10 – Device Management
Terms:
Device Registers
I/O Control Block
Polling
Interrupts
Event flag
Buffer Management
Double Buffering
Disk/Software Caching
I/O Queues
Synchronous communications
Asynchronous communications
Concepts:
1. Understand the device driver components and responsibilities in diagram10-22
2. On page 5, understand the programming strategies: programmed I/O and block
transfer!
3. Understand what happens during polling
4. Contrast using Interrupt drive I/O vs polling to service I/O requests.
5. Understand how buffering and double buffering can improve I/O performance
6. Understand how software/disk caching can improve I/O performance, and the
drawbacks to this technique
7. Be able to discuss issues with managing I/O request queues in a
multiprogramming environment
Questions to Review:
1, 2, 3, 4
Instructors notes and slides:
Power point slides, and lecture notes
Chapter 12 – File management
Terms:
File system
file manager
file descriptor
Volume
logical volume
physical volume
Volume descriptor
allocation table
system area
Simple contiguous organization
contiguous organization with extents
Free chain
blocked organizations
blocked chained organization
File allocation table
blocked indexed organization
File attributes
simple/single directories
user directories
Hierarchical directories
buffers
file control blocks
Concepts
1. Understand the basic file operations discussed in my power point slides. (these are
called primitive file operations in Dr. Mooney’s text)
2. Understand the purpose of a volume descriptor.
3. Understand how different areas are sometimes laid out on a volume: Volume
descriptor, system area, allocation table, directory area, and file area
4. UNDERSTAND THE DIFFERENT FILE STORAGE ORGANIZATIONS,
AND ISSUES RELATED TO INFORMATION RETAINED IN FILE
DESCRIPTORS FOR EACH. (contiguous, contiguous with extents, blocked
chained, blocked indexed)
Questions to Review:
1, 2, 3, 4, 5, 9, and 10….
Instructors notes and slides:
Instructor notes only
Project manual:
Some terms will be taken from chapters I-2, R3, and R2 SOME TEST
QUESTIONS WILL COME FROM THESE CHAPTERS.
Instructors lecture notes from web page:
1. Overview of operating systems: corresponds fairly closely to your text book’s
chapter 1.
2. Chapter 2: History of Operating systems: Additional information and terms have
been added from other sources, with a slightly different organization. Understand the
different stages of operating system development and the impetus for those changes.
What was programming like before operating systems.
3. Chapter 3: Issues of user and program interface design: be able to discuss the
various design issues raised in this document.
4. Chapter 4: Notes on Process Management: Additional information and terms have
been added from other sources, with a slightly different organization . Understand
that a program is a passive entity, and a process is an active entity. Know the various
process states, and what causes a process to transition from one state to another.
WHAT MUST HAPPEN TO PERFORM A CONTEXT SWITCH!!!!!!!!! Understand
the operations on processes, the concepts of a process HIERARCHY and the
associated relationships between processes.
5. chapter 5: Notes on Process scheduling: Additional information and terms have
been added from other sources . This source adds additional information on I/o vs
cpu bound processes, as well as additional objectives of scheduling algorithms
6. chapter 6: Notes on scheduling algorithms: Additional information and terms have
been added from other sources This contains additional details about the various
scheduling algorithms, and gives examples of calculating the average waiting time of
processes.
Keywords:
Operating System
Physical Resource
User interface
Process management
Process scheduling
Punched cards
Batch processing systems
Spooling
Multi-tasking (timesharing)
Graphical user interface
Sequential process
Thread
Context
Batch processes
Preemption
Job
Static process management
Long-term scheduling
Active set
Static priority algorithm
Processor time quantum
Priorities
Interrupt handler
Offset
Stack segment
Application Program
Systems Program
logical resource
kernel
program interface (API)
Process
interleaved execution
multiprogramming
device management
interrupts
resident monitor/loader
JCL
batch serial operation
batch multiprogramming
interactive computing
time quantum/time slicing
device driver
command line interface
command language
command handler (shell)
concurrent sequential processes
process control block (PCB)
processor state
context switching
interactive processes
real-time processes
fork
ready queue
SCHEDULING
scheduler
Dynamic process management
medium term scheduling short term scheduling
swapping
dispatcher
dynamic priority algorithm starvation
storage time quantum
AGING
overhead
stack
segmented addressing
segment number
data segment
code segment
instruction pointer
Download