By implementing a memory allocator, I learned the inner working of
*alloc and free operations, and more importantly,
In this assignment, we were given the wrapper function of the system
call sbrk(), and we were to implement malloc(), realloc(), and
free() functions utilizing an explicit free list, without using the
existing glibc built-in functions.