структура UFS_UNIT_DESCRIPTOR (ufs.h)
Структура UFS_UNIT_DESCRIPTOR описывает универсальный дескриптор единиц.
Синтаксис
typedef struct {
UCHAR bLength;
UCHAR bDescriptorIDN;
UCHAR bUnitIndex;
UCHAR bLUEnable;
UCHAR bBootLunID;
UCHAR bLUWriteProtect;
UCHAR bLUQueueDepth;
UCHAR bPSASensitive;
UCHAR bMemoryType;
UCHAR bDataReliability;
UCHAR bLogicalBlockSize;
UCHAR qLogicalBlockCount[8];
UCHAR dEraseBlockSize[4];
UCHAR bProvisioningType;
UCHAR qPhyMemResourceCount[8];
UCHAR wContextCapabilities[2];
UCHAR bLargeUnitGranularity_M1;
USHORT wLUMaxActiveHPBRegions;
USHORT wHPBPinnedRegionStartIdx;
USHORT wNumHPBPinnedRegions;
ULONG dLUNumWriteBoosterBufferAllocUnits;
} UFS_UNIT_DESCRIPTOR, *PUFS_UNIT_DESCRIPTOR;
Члены
bLength
Указывает длину (в байтах) этого дескриптора.
bDescriptorIDN
Указывает тип дескриптора. Этот дескриптор будет иметь значение UFS_DESC_UNIT_IDN.
bUnitIndex
Задает индекс единицы измерения
bLUEnable
Указывает, включен ли номер единицы логики (LUN). Если значение bLUEnable равно 0x00, логическая единица отключается.
bBootLunID
bLUWriteProtect
Указывает, защищена ли логическая единица записи. Содержит одно из следующих значений:
Значение | Описание |
---|---|
0x00 | Логическая единица не защищена от записи. |
0x01 | Логическая единица защищена записью. |
0x02 | Логическая единица защищена навсегда. |
bLUQueueDepth
Задает глубину очереди логических единиц. Может быть любым значением от 0x00 до 0xff.
bPSASensitive
Указывает, чувствительна ли логическая единица к пайку. Содержит одно из следующих значений:
Значение | Описание |
---|---|
0x00 | Логическая единица не чувствительна к пайку. |
0x01 | Логическая единица чувствительна к пайку. |
bMemoryType
Указывает требуемый тип памяти. Параметр wSupportedMemoryTypes в структуре UFS_GEOMETRY_DESCRIPTOR указывает, какие типы памяти поддерживаются устройством.
bDataReliability
Указывает, защищено ли устройство от сбоя питания во время операции записи в логическую единицу.
bLogicalBlockSize
Задает размер логического блока дескриптора. Задайте для этого значения соответствующее значение в dOptimalLogicalBlockSizeUFS_GEOMETRY_DESCRIPTOR для конкретного типа памяти логической единицы.
qLogicalBlockCount[8]
Задает общее количество адресуемых логических блоков в логической единице.
dEraseBlockSize[4]
Задает размер блока стирания.
bProvisioningType
Указывает тип подготовки.
qPhyMemResourceCount[8]
Указывает общий объем ресурсов физической памяти, доступных в логическом блоке.
wContextCapabilities[2]
Указывает количество контекстов, поддерживаемых в каждой логической единице.
bLargeUnitGranularity_M1
Задает степень детализации большой единицы за вычетом единицы.
wLUMaxActiveHPBRegions
Задает максимальное число регионов HPB, назначенных логической единице HPB.
wHPBPinnedRegionStartIdx
Указывает смещение начала закрепленной области HPB.
wNumHPBPinnedRegions
Указывает количество закрепленных областей HPB, назначенных логической единице HPB.
dLUNumWriteBoosterBufferAllocUnits
Указывает количество единиц выделения буфера WriteBooster логических единиц.
Комментарии
bPSASensitive и dEraseBlockSize обновляются автоматически после настройки устройства.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 версии 1709 |
Минимальная версия сервера | Windows Server 2016 |
Верхняя часть | ufs.h |