Reliably locking system V shared memory for user level communication in Linux
Friedrich Seifert, Wolfgang Rehm · 2001
A major trend in recent cluster communication systems is to circumvent the operating system during the actual data transfers. That, on the one hand, reduces latency since there is no user--kernel transition needed and, on the other hand, increases bandwidth by avoiding additional intermediate copies. The data transfer is handled completely by the networking hardware and its DMA engine. For example, the Virtual Interface processes can access networking hardware directly in a protected manner. One of its characteristics is that it requires that all memory used for communication be locked down into physical memory. The same requirement holds true for the Infiniband ensures reliable locking of regular, i.e. private, virtual memory without altering the kernel. In this paper we present an extended solution that can handle System V shared memory as well.