Contents

IOBufferMemoryDescriptor

A memory buffer allocated in the caller’s address space.

Declaration

class IOBufferMemoryDescriptor;

Overview

Use an IOBufferMemoryDescriptor to share data between your driver and other processes, including the kernel. You create memory buffers in your driver’s process space, but you can pass the buffer to any API that expects an IOMemoryDescriptor object. Some DriverKit APIs pass your buffer to another process, which can then map the buffer to its own address space and access the contents.

Typically, you create memory buffer objects to store data moving in and out of your driver. For example, a network interface driver might create a buffer to store packet data it receives from the associated device. You are responsible for managing the contents of the buffer yourself, typically by mapping it to a known data type. Except where noted, you are also responsible for releasing buffers that you allocate.

Topics

Creating a Memory Buffer

Managing the Buffer Contents

See Also

Memory management