53 lines
No EOL
2 KiB
C
53 lines
No EOL
2 KiB
C
/**
|
|
* @mainpage
|
|
* @section intro Introduction
|
|
*
|
|
* The implementation of a simple memory management system.
|
|
*
|
|
* @section objective Assignment Objective
|
|
*
|
|
* Implementation of a memory management system as a replacement for malloc and free.
|
|
*
|
|
* @section assignment Assignment
|
|
*
|
|
* Technical details regarding the implementation of the memory manager are stated in
|
|
* file `mem_man.c`.
|
|
*
|
|
* - Implement all functions declared in `mem_man.h`.
|
|
* - Implement unit tests, at least those that are declared in `test_mem_man.h`
|
|
* - Add additional unit tests as needed.
|
|
*
|
|
* @section instructions Working Instructions
|
|
*
|
|
* -# Implement all missing but required functions of all files mentioned below empty to make the
|
|
* application compilable and runnable. Most unit tests will be red.
|
|
* - **--COMMIT--**
|
|
*
|
|
* -# 'test_mem_man.c': Implement all declared unit tests. Run those tests, they shall be red, because non of
|
|
* the tested functions is implemented yet.
|
|
* - **--COMMIT--**
|
|
*
|
|
* -# 'mem_man.c': Implement all functions defined by this file.
|
|
* - Obey comments in header files and source code.
|
|
* - Run the unit tests frequently and fix failures.
|
|
* - Make all unit tests green.
|
|
* - **--COMMIT--**
|
|
|
|
* -# 'test_mem_man.c': Extend the unit tests with additional test cases.
|
|
* - **--COMMIT--**
|
|
*
|
|
* -# 'mem_man_app.c': Implement the main application according to the requirements state in the source file
|
|
* of the application.
|
|
* - **--COMMIT--**
|
|
*
|
|
* -# Run the application.
|
|
*
|
|
*
|
|
* @section notes Notes
|
|
* -# `general.h` contains macros for finding the minimum, maximum, and absolute value
|
|
* -# make cleantest: This new make target for clearing the console, building, and running unit test is available.
|
|
* -# Sometimes changes are not properly detected by incremental builds. If something very strange
|
|
* happens during compilation, try to run `make clean` followed by `make` to start a clean build.
|
|
* This approach is also recommended after everthing is done, because some compiler warning appears
|
|
* only in clean builds.
|
|
*/ |