[CSE]  Advanced Operating Systems 
 COMP9242 2008/S2 
UNSW
CRICOS Provider
Number: 00098G

PRINTER Printer-Friendly Version
Administration               
- Notices
- Course Intro
- Consultations
- Survey Results
 
Work
- Lectures
- Selected Papers
- Project Spec
- Exam
 
Forums
- Forums
 
Resources
Project Resources
Slug Lab
L4 Debugging Guide
Developing on a Mac
Developing on Linux
SOS source browser

 
Documentation
OKL4 reference manual
Elfweaver user manual
IXP42X hardware manual 
OKL Wiki
NSLU2-Linux HomePage
Intel IXP400 Software

 
Related Info
IBM OS Prize
OS Hall of Fame
 
History
2007
2006
2005
2004
2003
2002
2000
1999
1998
- 1997
 
Staff
- Gernot Heiser
- Kevin Elphinstone (LiC)
- Guest Lecturers (TBA)
 
Stureps
- Student Reps

 
Valid HTML 4.0!

M6: Demand paging

In this milestone you need to implement paging of memory. This should build on the earlier milestone where you implemented a pager. The backing store for your paging system will be an NFS file called swap. You should implement a second-chance page-replacement algorithm.

Design issues

Most of the design in this section will come down to the appropriate choice of data structures. If you haven't already done so, you will need to work out your page table structure. You will also need to decide how to keep track of frames in your swap file. You may want to keep things simple at first be only concentrating on one process, however you should be aware that the next milestone will require you to handle multiple processes.

Assessment

To demonstrate that your code is indeed using the paging system you should artificially reduce the number of free frames, and run a program which uses a large heap.

You may want to write a command called thrash which writes data to a given number of pages and then reads it back (verifying that it has been read back correctly).


Last modified: 27 Jul 2007.