it's a very ugly and simple implementation of first fit malloc that also does merging of free blocks, written as an assignement in the OS Technology course. Internally 2 single-linked lists are used - freelist and used list. There are lots of ugly workarounds for problems that I didn't forsee, but I was over a month over deadline so I didn't have time to rewrite it. there's also a programm main that tests library, it can work in two modes: when invoked without arguments it does several simple hardcoded allocations/frees.. this iis usefull for debugging when invoked with any argument(s) it uses more complex tests that allocate 100 random sized blocks & fill it with random data, then checksum for contents of each block is calculated then some blocks are randomly freed and some of the freed blocks are reallocated, Finally checksums calculated again and compared with originals.