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 (ユニバーサル フラッシュ ストレージ) でサポートされる論理ユニットの最大数を指定します。 次のいずれかの値が含まれます。
値 | 説明 |
---|---|
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
[セキュリティ プロトコルイン] および [セキュリティ プロトコル出力] で許可される再生保護メモリ ブロック (RPMB) フレームの最大数を指定します。各フレームは 256 バイトです。
bDynamicCapacityResourcePolicy
デバイスのスペア ブロック リソース管理ポリシーを指定します。 次のいずれかの値が含まれます。
値 | 説明 |
---|---|
0x00 | [スペア ブロック] リソース管理ポリシーは論理ユニットごとに行われます。 |
0x01 | [スペア ブロック] リソース管理ポリシーはメモリの種類別です。 |
bDataOrdering
デバイスが順序の外のデータ転送をサポートするかどうかを指定します。 次のいずれかの値が含まれます。
値 | 説明 |
---|---|
0x00 | 順序指定されていないデータ転送はサポートされていません。 |
0x01 | 順序指定されていないデータ転送がサポートされています。 |
その他のすべての値 | 将来利用するために予約されています。 |
bMaxContexIDNumber
デバイスでサポートされるコンテキストの最大数を指定します。 この数値は 5 より大きくする必要があります。
bSysDataTagUnitSize
システム データ タグの単位サイズを指定します。
bSysDataTagResSize
システム データを処理するためにデバイスによって割り当てられた最大サイズ (バイト単位) を指定します。
bSupportedSecRTypes
サポートされているセキュリティで保護された削除の種類を指定します。 変数の最初の 3 ビットは、サポートされているさまざまな Secure Removal 型を表すフラグです。
ビット | 説明 |
---|---|
0 | 物理メモリを消去して削除された情報。 |
1 | アドレス指定された場所を 1 文字で上書きし、その後に消去することで削除された情報。 |
2 | アドレス指定された場所を文字、その補数、ランダムな文字で上書きすることによって削除された情報。 |
3 | ベンダー定義のメカニズムを使用して削除された情報。 |
4-7 | 将来利用するために予約されています。 |
wSupportedMemoryTypes[2]
ビットマップでサポートされているメモリの種類を指定します。
ビット | 説明 |
---|---|
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]:予約済み
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フレーム数を超える場合は、複数のセキュリティ コマンドで実行されます。
通常のメモリの種類の容量調整係数の値は 1 と等しくなります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 バージョン 1709 |
サポートされている最小のサーバー | Windows Server 2016 |
Header | ufs.h |