共用方式為


UFS_GEOMETRY_DESCRIPTOR 結構 (ufs.h)

UFS_GEOMETRY_DESCRIPTOR 描述裝置的幾何參數。

語法

typedef struct {
  UCHAR  bLength;
  UCHAR  bDescriptorIDN;
  UCHAR  bMediaTechnology;
  UCHAR  Reserved1;
  UCHAR  qTotalRawDeviceCapacity[8];
  UCHAR  bMaxNumberLU;
  UCHAR  dSegmentSize[4];
  UCHAR  bAllocationUnitSize;
  UCHAR  bMinAddrBlockSize;
  UCHAR  bOptimalReadBlockSize;
  UCHAR  bOptimalWriteBlockSize;
  UCHAR  bMaxInBufferSize;
  UCHAR  bMaxOutBufferSize;
  UCHAR  bRPMB_ReadWriteSize;
  UCHAR  bDynamicCapacityResourcePolicy;
  UCHAR  bDataOrdering;
  UCHAR  bMaxContexIDNumber;
  UCHAR  bSysDataTagUnitSize;
  UCHAR  bSysDataTagResSize;
  UCHAR  bSupportedSecRTypes;
  UCHAR  wSupportedMemoryTypes[2];
  UCHAR  dSystemCodeMaxNAllocU[4];
  UCHAR  wSystemCodeCapAdjFac[2];
  UCHAR  dNonPersistMaxNAllocU[4];
  UCHAR  wNonPersistCapAdjFac[2];
  UCHAR  dEnhanced1MaxNAllocU[4];
  UCHAR  wEnhanced1CapAdjFac[2];
  UCHAR  dEnhanced2MaxNAllocU[4];
  UCHAR  wEnhanced2CapAdjFac[2];
  UCHAR  dEnhanced3MaxNAllocU[4];
  UCHAR  wEnhanced3CapAdjFac[2];
  UCHAR  dEnhanced4MaxNAllocU[4];
  UCHAR  wEnhanced4CapAdjFac[2];
  UCHAR  dOptimalLogicalBlockSize[4];
  UCHAR  bHPBRegionSize;
  UCHAR  bHPBNumberLU;
  UCHAR  bHPBSubRegionSize;
  USHORT wDeviceMaxActiveHPBRegions;
  UCHAR  Reserved2[2];
  UCHAR  dWriteBoosterBufferMaxNAllocUnits[4];
  UCHAR  bDeviceMaxWriteBoosterLUs;
  UCHAR  bWriteBoosterBufferCapAdjFac;
  UCHAR  bSupportedWriteBoosterBufferUserSpaceReductionTypes;
  UCHAR  bSupportedWriteBoosterBufferTypes;
} UFS_GEOMETRY_DESCRIPTOR, *PUFS_GEOMETRY_DESCRIPTOR;

成員

bLength

指定描述項的長度。

bDescriptorIDN

指定描述項的類型。 此描述項的值會是 UFS_DESC_GEOMETRY_IDN

bMediaTechnology

保留供未來使用。

Reserved1

保留供未來使用。

qTotalRawDeviceCapacity[8]

指定原始裝置容量總計。 以512位元組的單位表示。

bMaxNumberLU

指定UFS (Universal Flash Storage) 支援的邏輯單元數目上限 () 。 包含下列其中一個值:

Description
0x00 8 個邏輯單元。
0x01 32 個邏輯單元。
其他值 保留供未來使用。

dSegmentSize[4]

以512位元組為單位指定裝置的區段大小。

bAllocationUnitSize

指定區段數目的配置單位大小。

bMinAddrBlockSize

以 512 個字節的單位指定可尋址區塊大小下限。 最小大小為 4 KB 或0x08的值。

bOptimalReadBlockSize

以512位元組為單位指定最佳讀取區塊大小。

bOptimalWriteBlockSize

以512位元組為單位指定最佳寫入區塊大小。 bOptimalWriteBlockSize 等於或大於 bMinAddrBlockSize

bMaxInBufferSize

以512位元組為單位指定數據內緩衝區的大小上限。 迷你大小為 4 KB 或0x08的值。

bMaxOutBufferSize

以 512 位元組為單位指定資料輸出緩衝區的大小上限。 迷你大小為 4 KB 或0x08的值。

bRPMB_ReadWriteSize

指定安全性通訊協定 In and Security Protocol Out 中允許的重新執行受保護記憶體區塊數目上限, (RPMB) 畫面格。每個畫面都是256位元組。

bDynamicCapacityResourcePolicy

指定裝置的備用區塊資源管理原則。 包含下列其中一個值:

Description
0x00 備用區塊資源管理原則是每個邏輯單元。
0x01 備援區塊資源管理原則是每個記憶體類型。

bDataOrdering

指定裝置是否支持順序錯亂數據傳輸。 包含下列其中一個值:

Description
0x00 不支援順序不足的數據傳輸。
0x01 支持順序不足的數據傳輸。
所有其他的值 保留供未來使用。

bMaxContexIDNumber

指定裝置所支援的內容數目上限。 這個數字必須大於 5。

bSysDataTagUnitSize

指定系統數據標記單位大小。

bSysDataTagResSize

指定裝置配置的最大大小,以位元組為單位來處理系統數據。

bSupportedSecRTypes

指定支援的安全移除類型。 變數的前3個位是代表不同支援安全移除類型的旗標。

bit 描述
0 使用物理記憶體清除移除的資訊。
1 藉由以單一字元後面接著清除來覆寫尋址位置來移除資訊。
2 藉由以字元、其補碼、隨機字元覆寫尋址位置來移除資訊。
3 使用廠商定義機制移除的資訊。
4-7 保留供未來使用。

wSupportedMemoryTypes[2]

指定點陣圖中支援的記憶體類型。

bit 描述
0 支援一般記憶體類型。
1 支援系統程式代碼記憶體類型。
2 支援非持續性記憶體類型。
3 支援增強型記憶體類型 1。
4 支援增強的記憶體類型 2。
5 支援增強的記憶體類型 3。
6 支援增強的記憶體類型 4。
7-14 保留供未來使用。
15 支援 RPMB 記憶體類型。

dSystemCodeMaxNAllocU[4]

指定裝置的系統代碼配置單位數目上限。

wSystemCodeCapAdjFac[2]

物種系統程式代碼記憶體類型的容量調整因數。

dNonPersistMaxNAllocU[4]

物種非持續性記憶體類型的配置單位數目上限。

wNonPersistCapAdjFac[2]

指定非持續性記憶體類型的容量調整因數。

dEnhanced1MaxNAllocU[4]

指定增強型記憶體類型 1 的配置單位數目上限。

wEnhanced1CapAdjFac[2]

指定增強型記憶體類型 1 的容量調整因數。

dEnhanced2MaxNAllocU[4]

指定增強型記憶體類型 2 的配置單位數目上限。

wEnhanced2CapAdjFac[2]

指定增強型記憶體類型 2 的容量調整因數。

dEnhanced3MaxNAllocU[4]

指定增強型記憶體類型 3 的配置單位數目上限。

wEnhanced3CapAdjFac[2]

指定增強型記憶體類型 3 的容量調整因數。

dEnhanced4MaxNAllocU[4]

指定增強型記憶體類型 4 的配置單位數目上限。

wEnhanced4CapAdjFac[2]

指定增強型記憶體類型 4 的容量調整因數。

dOptimalLogicalBlockSize[4]

指定最佳的邏輯區塊大小。

  • bit [3:0]: 一般記憶體類型
  • bit [7:4]: 系統程式代碼記憶體類型
  • bit [11:8]: 非持續性記憶體類型
  • bit [15:12]:增強型記憶體類型 1
  • bit [19:16]: 增強的記憶體類型 2
  • bit [23:20]: 增強的記憶體類型 3
  • bit [27:24]: 增強型記憶體類型 4
  • bit [31:28]:Reserved

bHPBRegionSize

指定 HPB 區域的大小。

bHPBNumberLU

指定可啟用 HPB 的邏輯單元數目上限。

bHPBSubRegionSize

指定 HPB 子系的大小。 bHPBSubRegionSize 不能超過 bHPBRegionSize

wDeviceMaxActiveHPBRegions

指定裝置所支援的作用中 HPB 區域 mximum 數目。

Reserved2[2]

保留供未來使用。

dWriteBoosterBufferMaxNAllocUnits[4]

指定裝置支援的 WriteBooster 緩衝區大小總計。 所有 LU 的 WriteBooster 緩衝區大小總和小於或等於 dWriteBoosterBufferMaxNAllocUnits 所指示的值。

bDeviceMaxWriteBoosterLUs

指定支援的 WriteBooster 緩衝區數目上限。

bWriteBoosterBufferCapAdjFac

指定 WriteBooster 緩衝區內存類型的容量調整因數。 當 WriteBooster Buffer 設定為使用者空間縮減模式時,這個值會提供 LBA 空間縮減乘法因數。 因此,只有當 bWriteBoosterBufferPreserveUserSpaceEn 是0x00時,才適用此參數。

bSupportedWriteBoosterBufferUserSpaceReductionTypes

指定使用者空間縮減模式的支援性,並保留用戶空間模式。

  • 0x00:WriteBooster 緩衝區只能在用戶空間縮減類型中設定。
  • ox01:WriteBooster 緩衝區只能在保留使用者空間類型中設定。
  • ox02:裝置可以在用戶空間縮減類型中設定,或保留使用者空間類型。
  • 其他 :保留

bSupportedWriteBoosterBufferTypes

指定 WriteBooster 緩衝區類型的支援性。

  • 00h:LU 型 WriteBooster 緩衝區設定
  • 01h:單一共用 WriteBooster 緩衝區設定
  • 02h:同時支援 LU 型 WriteBooster 緩衝區和單一共用 WriteBooster 緩衝區設定
  • 其他:保留

備註

如果傳輸的數據大小超過 bRPMB_ReadWriteSize框架數目,則會在多個安全性命令中完成。

一般記憶體類型的容量調整因數值等於一。

規格需求

需求
最低支援的用戶端 Windows 10 (版本 1709)
最低支援的伺服器 Windows Server 2016
標頭 ufs.h