IODeviceMemory
IOMemoryDescriptor используется для диапазонов физической памяти устройства.
Класс IODeviceMemory является простым подклассом IOMemoryDescriptor, использующего его методы для описания единственного диапазона физической памяти на устройстве. Объекты IODeviceMemory обычно ищутся с IOService или средствами доступа IOPCIDevice, и создаются семействами шины с отображенной памятью. IODeviceMemory реализует только некоторые методы фабрики в дополнение к методам IOMemoryDescriptor.
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый
Objective C
@import Kernel;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает OSArray экземпляров IODeviceMemory, каждый описывающий один физический диапазон и значение тега.
Объявление
C++
static OSArray * arrayFromList( InitElement list[], IOItemCount
count
);Параметры
list
Массив IODeviceMemory:: структуры InitElement.
count
Число элементов в списке.
Возвращаемое значение
Возвращает создаваемый OSArray объектов IODeviceMemory, чтобы быть выпущенным вызывающей стороной или нулем при отказе.
Обсуждение
Этот метод создает экземпляры IODeviceMemory для каждого физического диапазона, переданного в IODeviceMemory:: массив InitElement. Каждый элемент состоит из физического адреса, длины и значения тега для IODeviceMemory. Экземпляры возвращаются как создаваемый OSArray.
-
Создает экземпляр IODeviceMemory, описывая один физический диапазон.
Объявление
C++
static IODeviceMemory * withRange( IOPhysicalAddress
address
, IOPhysicalLengthwithLength
);Параметры
address
Физический адрес первого байта в памяти.
withLength
Длина памяти.
Возвращаемое значение
Возвращает создаваемый IODeviceMemory на успехе, чтобы быть выпущенным вызывающей стороной или нулем при отказе.
Обсуждение
Этот метод создает экземпляр IODeviceMemory для одного физического диапазона, переданного как физический адрес и длина. Это просто вызывает IOMemoryDescriptor:: withPhysicalAddress.
-
Создает экземпляр IODeviceMemory, описывая подмножество существующего диапазона IODeviceMemory.
Объявление
C++
static IODeviceMemory * withSubRange( IODeviceMemory *
of
, IOPhysicalAddressoffset
, IOPhysicalLengthlength
);Параметры
of
Родительский IODeviceMemory которого поддиапазон должен использоваться для нового дескриптора, который будет сохранен поддиапазоном IODeviceMemory.
offset
Байтовое смещение в память родителя.
length
Длина поддиапазона.
Возвращаемое значение
Возвращает создаваемый IODeviceMemory на успехе, чтобы быть выпущенным вызывающей стороной или нулем при отказе.
Обсуждение
Этот метод создает экземпляр IODeviceMemory для подмножества существующего диапазона IODeviceMemory, переданного как смещение физического адреса и длина. Это просто вызывает IOMemoryDescriptor:: withSubRange.
-
Объявление
C++
struct InitElement { IOPhysicalAddress start; IOPhysicalLength length; IOOptionBits tag; };
Поля
start
Первый физический адрес в диапазоне.
length
Длина диапазона.
tag
32-разрядное значение, не интерпретируемое IODeviceMemory или IOMemoryDescriptor, для использования семейством шины.