Patent ID: 7849272

Claim:
A method for dynamically managing memory to support one or more processes executing in a remote direct memory access (RDMA) environment, the method comprising the steps of: inserting a descriptor in a shared descriptor table, the descriptor corresponding to a block of memory allocated to a heap by an operating system; in response to allocating a portion of the block of memory from the heap to a process, determining whether the process has an existing registration with an application program interface for the block of memory, and if the process has no existing registration, registering the process with the application program interface and storing a registration corresponding to the block of memory in a private registration table of the process; and in response to the process releasing the allocated portion of the block of memory to the operating system, de-registering with the application program interface and removing the registration from the private registration table; wherein, when the block of memory is released to the operating system, other registrations corresponding to the block of memory in other private registration tables of other processes remain in the other private registration tables.