Memory
The Pintos userspace that you implemented in Project 1 is subject to a major limitation — there is no way to perform any dynamic memory allocation in a user program. Presently, all memory in a user process must either have been loaded from the executable (e.g. code, globals) or must be allocated on the stack.
In this homework, you will provide a way for a user process to explicitly request more memory from the Pintos kernel and use this feature to create your own implementation of malloc
, realloc
, and free
.
Getting started
Log into your VM and pull the skeleton code from the staff repository:
cd ~/code/personal
git pull staff main
cd hw-memory
If you completed any previous assignments locally, make sure to run git pull personal main
as well.