1. A method, comprising: receiving, at a hardware memory management module, a memory allocation message for each primary memory allocation in a primary memory made by a primary processor, where each memory allocation message comprises an indication of whether a finalizer routine is associated with each primary memory allocation; allocating, within a second memory in response to each memory allocation message, a representation of each primary memory allocation comprising the indication of whether each primary memory allocation comprises the associated finalizer routine; determining, based upon the allocated representations of each primary memory allocation within the second memory, to free a primary memory allocation in the primary memory; and sending, in response to determining that the primary memory allocation comprises the associated finalizer routine, a call object finalizer message to the primary processor instructing the primary processor to call the finalizer routine associated with the primary memory allocation in the primary memory.