This project is an interactive simulation of operating system memory management to understand contiguous memory allocation, deallocation, and defragmentation.
It models a simple OS memory manager using a doubly linked list, where each node represents a memory chunk (either free or allocated). The program supports dynamic allocation and freeing of processes and simulates defragmentation to reduce fragmentation.
- GCC compiler
- Linux / macOS terminal (or WSL on Windows)
-
Run the following commands in your terminal:
make
-
Run
./memory_sim
-
Clean build files
make clean
Developed as a learning project to understand OS-level memory management algorithms and assignment given in University Coding Academy.