1. A method, the method comprising: receiving, via a computing device, a memory request associated with a memory block, wherein the computing device has a double linked list of fixed sized memory blocks and a double linked list of variable sized memory blocks; and wherein each memory block included in the double linked list of fixed sized memory blocks and a double linked list of variable sized memory blocks includes a value field and a header field; wherein the header fields includes one or more of a backward link, forward link, and memory block size indicator; and wherein the memory block size indicator includes a first bit that reflects whether the value field includes a start address of another memory block that precedes the memory block in memory address and a second bit that reflects whether the memory block is in use by a process associated with the computing device; determining a scope of the received memory request, wherein the scope of the received memory request is a request for memory allocation or memory deallocation; and servicing, in response to the determining the scope of the received memory request, the received memory request.