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 la valeur 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 en écriture.

bLUQueueDepth

Spécifie la profondeur de la file d’attente d’unités logiques. Il peut s’agir de n’importe quelle valeur de 0x00 à 0xff.

bPSASensitive

Spécifie si l’unité logique est sensible au brasage. Contient l’une des valeurs suivantes :

Valeur Description
0x00 L’unité logique n’est pas sensible au brasage.
0x01 L’unité logique est sensible au brasage.

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 sur 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 le total des ressources de mémoire physique 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é de grande unité, moins un.

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 la région épinglée HPB.

wNumHPBPinnedRegions

Spécifie le nombre de régions épinglées HPB attribué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.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1709
Serveur minimal pris en charge Windows Server 2016
En-tête ufs.h

Voir aussi