Partager via


structure UFS_UNIT_DESCRIPTOR (ufs.h)

La structure UFS_UNIT_DESCRIPTOR décrit un descripteur d’unité générique.

Syntaxe

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;

Membres

bLength

Spécifie la longueur, en octets, de ce descripteur.

bDescriptorIDN

Spécifie le type du descripteur. Ce descripteur aura une valeur de UFS_DESC_UNIT_IDN.

bUnitIndex

Spécifie l’index d’unité

bLUEnable

Spécifie si le numéro d’unité logique (LUN) est activé. Si bLUEnable est égal à 0x00, l’unité logique est désactivée.

bBootLunID

bLUWriteProtect

Spécifie si l’unité logique est protégée en écriture. Contient l’une des valeurs suivantes :

Valeur Description
0x00 L’unité logique n’est pas protégée en écriture.
0x01 L’unité logique est protégée en écriture.
0x02 L’unité logique est protégée en permanence.

bLUQueueDepth

Spécifie la profondeur de la file d’attente d’unités logiques. Peut être n’importe quelle valeur de 0x00 à 0xff.

bPSASensitive

Spécifie si l’unité logique est sensible à la solde. Contient l’une des valeurs suivantes :

Valeur Description
0x00 L’unité logique n’est pas sensible à la solde.
0x01 L’unité logique est sensible à la solde.

bMemoryType

Spécifie le type de mémoire souhaité. Le paramètre wSupportedMemoryTypes dans la structure UFS_GEOMETRY_DESCRIPTOR indique les types de mémoire pris en charge par l’appareil.

bDataReliability

Spécifie si l’appareil est protégé contre une panne d’alimentation pendant une opération d’écriture dans l’unité logique.

bLogicalBlockSize

Spécifie la taille de bloc logique du descripteur. Définissez la valeur de cette valeur égale à la valeur correspondante dans dOptimalLogicalBlockSize de UFS_GEOMETRY_DESCRIPTOR pour le type de mémoire d’unité logique spécifique.

qLogicalBlockCount[8]

Spécifie le nombre total de blocs logiques adressables dans l’unité logique.

dEraseBlockSize[4]

Spécifie la taille du bloc d’effacement.

bProvisioningType

Spécifie le type d’approvisionnement.

qPhyMemResourceCount[8]

Spécifie les ressources de mémoire physique totales disponibles dans l’unité logique.

wContextCapabilities[2]

Spécifie le nombre de contextes à prendre en charge dans chaque unité logique.

bLargeUnitGranularity_M1

Spécifie la granularité d’unité de grande taille, moins une.

wLUMaxActiveHPBRegions

Spécifie le nombre maximal de régions HPB affectées à l’unité logique HPB.

wHPBPinnedRegionStartIdx

Spécifie le décalage de début de région épinglé HPB.

wNumHPBPinnedRegions

Spécifie le nombre de régions épinglées HPB affectées à l’unité logique HPB.

dLUNumWriteBoosterBufferAllocUnits

Spécifie le nombre d’unités d’allocation de mémoire tampon WriteBooster d’unité logique.

Remarques

bPSASensitive et dEraseBlockSize sont mis à jour automatiquement après la configuration de l’appareil.

Exigences

Exigence Valeur
client minimum pris en charge Windows 10, version 1709
serveur minimum pris en charge Windows Server 2016
d’en-tête ufs.h

Voir aussi