Site hosted by Angelfire.com: Build your free website today!

Department of Computer Science, UMass Amherst Andrew H. Fagg

Announcements/Reminders

˛ Friday: exam 2; Same place, same time

˛ Homework 5 due the following week

˛ Want to see what your classmates have done for lab 3? Ben Anderson

has set up a web page for this purpose:

http : ==fieryspoon:com=cs377=

Feel free to submit your own projects.

CMPSCI 377: Operating Systems Lecture 20, Page 1

Department of Computer Science, UMass Amherst Andrew H. Fagg

Exam Coverage

˛ Monitors (last part of Chapter 7)

˛ Deadlock (Chapter 8)

˛ Network Structures and RPC (Chapters 14 & 15)

˛ File Systems (Chapter 11)

˛ Memory Management (Chapter 9)

{ Contiguous Allocation

{ Basic Paging

CMPSCI 377: Operating Systems Lecture 20, Page 2

Department of Computer Science, UMass Amherst Andrew H. Fagg

Do's and Dont's

Do bring:

˛ Yourself

˛ One page of your OWN notes

Do not bring:

˛ Book

˛ Other class notes

˛ Electronic devices

CMPSCI 377: Operating Systems Lecture 20, Page 3

Department of Computer Science, UMass Amherst Andrew H. Fagg

Synchronization with Monitors

˛ What are the problems with semaphores?

˛ What are the essential components of a monitor?

˛ Use of condition variables.

˛ How are monitors diŽerent from semaphores?

CMPSCI 377: Operating Systems Lecture 20, Page 4

Department of Computer Science, UMass Amherst Andrew H. Fagg

Deadlock

˛ What is it?

˛ What are the necessary conditions?

˛ Mechanisms for the detection of deadlocks.

˛ Deadlock prevention.

˛ Deadlock avoidance & the Banker's algorithm.

CMPSCI 377: Operating Systems Lecture 20, Page 5

Department of Computer Science, UMass Amherst Andrew H. Fagg

Network Structures

˛ Why distributed systems?

˛ DiŽerent network models. What are their relative

advantages/disadvantages?

˛ Naming and addressing. How are these accomplished?

˛ Routing. How is this accomplished?

˛ Connection strategies. Circuit vs packet vs message switching.

˛ Packet structures.

˛ Protocol layers: application, transport, network, link, physical.

CMPSCI 377: Operating Systems Lecture 20, Page 6

Department of Computer Science, UMass Amherst Andrew H. Fagg

Interprocess Communication

˛ DiŽerent modes of distributed computing: data migration, computation

migration, and job migration.

˛ Client/server model of communication.

˛ Stream socket abstraction.

˛ Remote procedure call abstraction.

˛ What happens underneath the remote procedure call?

CMPSCI 377: Operating Systems Lecture 20, Page 7

Department of Computer Science, UMass Amherst Andrew H. Fagg

File Systems

˛ What is the ¯le abstraction?

˛ What are properties of the ¯le that the user can observe/manipulate?

˛ What information is stored by the OS during ¯le access?

˛ File access methods: sequential versus random.

˛ File naming and directory structures.

˛ Referential naming: hard vs soft links.

CMPSCI 377: Operating Systems Lecture 20, Page 8

Department of Computer Science, UMass Amherst Andrew H. Fagg

File System Implementation

˛ Addressing bits on a disk: cylinders, sectors.

˛ Overhead in accessing data on a disk.

˛ Representing a ¯le on a disk. File descriptors (inodes).

˛ Allocation of ¯les to sectors on the disk. How to map from part of a ¯le

to a sector? Linked list vs indexed block vs hierarchically indexed blocks.

˛ Managing free space.

˛ Representation of directories.

CMPSCI 377: Operating Systems Lecture 20, Page 9

Department of Computer Science, UMass Amherst Andrew H. Fagg

Memory Management

˛ Relocation: static vs dynamic.

˛ Physical vs virtual addresses.

˛ Contiguous allocation (monolithic segments).

˛ Internal vs external fragmentation.

˛ Compaction: why? what are the choices?

˛ Basic paging (page tables, computing physical addresses)

CMPSCI 377: Operating Systems Lecture 20, Page 10

Department of Computer Science, UMass Amherst Andrew H. Fagg

Next Time

˛ Monday: Holiday

˛ Wednesday: Discussion and more exam preparation

CMPSCI 377: Operating Systems Lecture 20, Page 11