Memory Placement Simulation Program

Memory Placement Simulation Program

A screenshot of the program running with a sample memory allocation.

Introduction

The project is developed for Mapua University - Makati in fulfillment of ITS150L, Operating Systems Laboratory. The project was done in groups and the tasks were distributed equally to the members. It is written purely in Python due to the time contraints of the project. Moreover it was done using the help of the following libraries and there specific use:

Libraries

  • PyQt – Handles the frontend of the application, providing a clean and responsive interface. It also integrates Matplotlib plots seamlessly for display.
  • Matplotlib – Responsible for visualizing memory usage through graphs.
  • Pandas – Processes and structures the data to make it easily plottable with Matplotlib.

Modules

  • Memory - This module essentially initializes the total memory for the simulation. The module overall is not required. It was implemented as a way to visualize the process easier. It is implemented by assigning a value to the memory variable.
  • Allocation - This module essentially gives meaning to the memory variable. It allocates usable space. Without allocation, the memory is unusable. It contains several functions, such as coalescing unallocated space, processing and queue processes. Although, not user callable.
  • Process - Similarly to memory, it only contains the informmation and does not have any function. An alternate implementation to this module would be using a table containing all the necessary information per process.
  • Validator - The module in charge of validating the entered inputs. It is implemented in the frontend aspect of the program.

Access

Since this is an academic project, publicly releasing the source code may lead to issues. Therefore, the project’s source will be made available upon request.


© 2025. All rights reserved.