If you weren't sick of memory allocation already from analloc, here's more! In my OS kernel, all memory allocation will be in terms of fixed-size pages. These pages follow the Intel standard of 4k bytes per page. The purpose of anpages is to provide a really straightforward linked-list mechanism for allocating and freeing individual pages in memory with minimal overhead.
I will add a usage here once I know how I want to use this.