Project: Distributed Memory Mapping Management System
1. Project description
The goal of the final project is to give students the opportunity to design and implement
a Distributed Memory Mapping Management System (i.e. DMMMS) from scratch. The project must provide the final user an API for
memory management that implements the following mandatory functionalities, others can be added, if needed:
- Map memory block - map a continuous or fragmented block of memory
- Unmap memory block - unmap the previously mapped memory blocks
- Read memory - read a block of memory
- Write memory - write a block of memory
The system includes the following components:
- Memory Management Service (Mandatory) - handles a single memory component
- Workstation (Mandatory) - terminal that provides the final user a unified view of the system
- Name Service (Mandatory) - handles the registration of other services
- Mapping Service (Optional) - handles the synchronization of memory operations
- Defragmentation Service (Optional) - handles memory defragmentation operations
- Cryptographic Service (Optional) - handles cryptographic keys/certificates
Memory blocks can be split up into pages or they can be available on a single memory management service.
2. Implementation requirements
The system must run under Linux OS and must be implemented using C++. Base classes can be found on the
lab main page, however, the use of these classes is not mandatory, students can implement the system using their own classes.
3. Milestone I
At the first milestone students must present a functional communication system with multiple instances
sending/receiving messages. The communication must include confirmation messages.
Date: October 27/28, 2009
4. Milestone II
At the second milestone students must present the Memory Management Service and the Name Service
including registration operations. The Workstations must also be functional in the sense that they should be able to locate Memory Management
Services and should be able to interrogate their capabilities.
Date: December 8/9, 2009
5. Milestone III
This is the last milestone, where students must have implemented the entire system.
Date: To be announced
|