Patent ID: 9594707
Date: 2017-03-14
CPC Classifications: G06F

Claim:
1. A method for performing data in input/output (I/O) operations using at least one computer network communications link, comprising: assigning a first block of virtual addresses, equal to the size of available physical memory, for exclusive usage with at least one computer network communications link; registering the entire first block of virtual addresses prior to an operating system partition performing I/O operations using the at least one computer network communications link, wherein registering comprises setting a plurality of virtual page frame numbers of the first block of virtual addresses to point to distinct pages of physical memory; performing one or more I/O operations using the at least one computer network communications link and the registered first block of virtual addresses, wherein the one or more I/O operations are performed without each I/O operation being associated with a distinct memory registration or a distinct memory deregistration; receiving an instruction to perform an I/O operation; combining the assigned first block of virtual addresses with a block of physical addresses to obtain a combined second block of virtual addresses; instructing the at least one computer network communications link to perform a direct memory access I/O operation using the combined second block of virtual addresses and the block of physical addresses; dynamically associating a third block of virtual addresses with the block of physical addresses before instructing the at least one computer network communications link to perform the direct memory access I/O operation; and disassociating the third block of virtual addresses from the block of physical addresses after the direct memory access I/O operation has been performed.