Dynamic Memory Allocator: Multi-Pool
===
You should have received a detailed handout for this project. It contains the project requirements and guidelines for implementing the project.
Repository Layout
---
The `src/` directory contains the source code for your allocator, as
well as some helper code. As given, it is a barely-working allocator
that uses `sbrk()` to directly allocate memory from the operating system
for every request. It does not implement `realloc()`, so many
applications will not run.
You should implement your entire allocator in `src/mm.c`. The bulk
allocator is also in `src/bulk.c`, but you should not modify the bulk
allocator for your implementation; the Autograder will test your
implementation using the given bulk allocator.
The `tests/` directory contains two simple tests; one of them tests the
bulk allocator (which, as stated above, you should not modify; this test
is just a sanity check to make sure the bulk allocator is working, and
to give you an example of a test), and the other tests to make sure that
`sbrk()` is not called between two requests for the same size
allocation. Note that this second test _will_ pass with the given
allocator, but that the given allocator is **NOT** a correct allocator;
however, if _your_ allocator has bugs, it may well fail this test!
These two tests should help you see how to design and run your own
tests.
Building the Project
---
The default make target (built by invoking `make`) builds the _shared
object_ (library) file `libcsemalloc.so`. This object contains your
allocator and can be used to run your standard Unix utilities using your
allocator. Instructions for how to do this are in the Makefile.
DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma
Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t
Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th
1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of
1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of