Some physical memory allocator implementations.
The project only needs g++
and make
for building. To build, simply open a terminal and type
make
Visualizers are Python scripts that can take the output generated by the XXXXAllocator.Dump()
method and turn it into an image.
Most of them depend on the cairo
library (install it with PIP. E.g. sudo pip3 install cairo
). The Linked List visualizer also depends on the graphviz
python library, as well as the graphviz
package from your package manager.
The way I used them was to modify the demo
project, and set up whatever scenario I want to visualize. Finally I call Dump()
and pipe the output into the visualizer. For example:
run-demo.sh | python ./bitmap_visualize.py
Obviously, you must not print anything else to the standard output (use stderr if you really have to).
src/phallocators
- this is a static library where the physical allocators are actually implementedsrc/demo
- a demo application showing how to use the allocatorssrc/tests
- some unit tests for verifying that the physical allocators work properlyvisualizers
- a bunch of python scripts for creating pretty pictures showing the state of the allocators