UQ Students should read the Disclaimer & Warning

Note: This page dates from 2005, and is kept for historical purposes.

COMP3300 – Assignment Two – Virtual Memory


My Result — out of 100
Class Average
Class Median
Class Standard Deviation

The purpose of this assignment is to further develop you proficiency in C programming and at the same time to improve your understanding of virtual memory.

This assignment is part of a project to investigate simplifications of popular page replacement strategies, aimed at small-scale computers with limited memory. The rationale is that small-memory systems are a growing niche, and rethinking operating system strategies may be necessary to suit them.


You need to:

You are required to edit exactly one file, virtualMemoryFIFO.c , which is provided with some initial content. This file may be completely rewritten for your solution. However, it must define functions required by the rest of the program, as defined in the header file virtualMemory.h :

Your solution must compile with the given command line, without any modifications to any of the other files. It also must run with any number of trace files in PDATs format, to simulate running a multitasking workload. The other files (the ones you will not modify) handle managing the trace files; your solution will only have to handle keeping track of usage of physical page frames and deciding which one to give up when the virtual memory system has to replace as page (when it runs out of free memory).





Early hand-in 24 hours or more before the deadline will attract a bonus of 5% of available marks provided your assignment scores at least 50% without the bonus. Late hand-ins unless a medical certificate has been approved by the course coordinator will receive a mark of zero.


Portions of code © Copyright 2004 Ned Martin