NVME_IDENTIFY_NAMESPACE_DATA-Struktur (nvme.h)
Enthält Werte, die Funktionen und Einstellungen angeben, die für einen bestimmten Namespace spezifisch sind.
Die Funktionen und Einstellungen, die allen Namespaces gemeinsam sind, sind in der NVME_IDENTIFY_NAMESPACE_DATA Datenstruktur für den Namespace mit dem Namespace-Bezeichner enthalten 0xFFFFFFFF
.
Die Nvme.h-Headerdatei definiert die Konstante NVME_NAMESPACE_ALL mit dem Wert .0xFFFFFFFF
Wenn der Controller die Namespaceverwaltung unterstützt und das Feld Namespacebezeichner (Namespace Identifier, NSID) der NVME_COMMAND-Struktur auf NVME_NAMESPACE_ALL festgelegt ist, gibt der Controller eine NVME_IDENTIFY_NAMESPACE_DATA Datenstruktur zurück, die Funktionen angibt, die in allen Namespaces gemeinsam sind.
Syntax
typedef struct {
ULONGLONG NSZE;
ULONGLONG NCAP;
ULONGLONG NUSE;
struct {
UCHAR ThinProvisioning : 1;
UCHAR NameSpaceAtomicWriteUnit : 1;
UCHAR DeallocatedOrUnwrittenError : 1;
UCHAR SkipReuseUI : 1;
UCHAR NameSpaceIoOptimization : 1;
UCHAR Reserved : 3;
} NSFEAT;
UCHAR NLBAF;
struct {
UCHAR LbaFormatIndex : 4;
UCHAR MetadataInExtendedDataLBA : 1;
UCHAR Reserved : 3;
} FLBAS;
struct {
UCHAR MetadataInExtendedDataLBA : 1;
UCHAR MetadataInSeparateBuffer : 1;
UCHAR Reserved : 6;
} MC;
struct {
UCHAR ProtectionInfoType1 : 1;
UCHAR ProtectionInfoType2 : 1;
UCHAR ProtectionInfoType3 : 1;
UCHAR InfoAtBeginningOfMetadata : 1;
UCHAR InfoAtEndOfMetadata : 1;
UCHAR Reserved : 3;
} DPC;
struct {
UCHAR ProtectionInfoTypeEnabled : 3;
UCHAR InfoAtBeginningOfMetadata : 1;
UCHAR Reserved : 4;
} DPS;
struct {
UCHAR SharedNameSpace : 1;
UCHAR Reserved : 7;
} NMIC;
NVM_RESERVATION_CAPABILITIES RESCAP;
struct {
UCHAR PercentageRemained : 7;
UCHAR Supported : 1;
} FPI;
struct {
UCHAR ReadBehavior : 3;
UCHAR WriteZeroes : 1;
UCHAR GuardFieldWithCRC : 1;
UCHAR Reserved : 3;
} DLFEAT;
USHORT NAWUN;
USHORT NAWUPF;
USHORT NACWU;
USHORT NABSN;
USHORT NABO;
USHORT NABSPF;
USHORT NOIOB;
UCHAR NVMCAP[16];
USHORT NPWG;
USHORT NPWA;
USHORT NPDG;
USHORT NPDA;
USHORT NOWS;
USHORT MSSRL;
ULONG MCL;
UCHAR MSRC;
UCHAR Reserved2[11];
ULONG ANAGRPID;
UCHAR Reserved3[3];
struct {
UCHAR WriteProtected : 1;
UCHAR Reserved : 7;
} NSATTR;
USHORT NVMSETID;
USHORT ENDGID;
UCHAR NGUID[16];
UCHAR EUI64[8];
NVME_LBA_FORMAT LBAF[16];
UCHAR Reserved4[192];
UCHAR VS[3712];
} NVME_IDENTIFY_NAMESPACE_DATA, *PNVME_IDENTIFY_NAMESPACE_DATA;
Member
NSZE
Gibt die Gesamtgröße des Namespace in logischen Blöcken an.
Ein Namespace der Größe n besteht aus logischer Blockadresse (LBA) 0
bis (n - 1)
. Die Anzahl der logischen Blöcke basiert auf der formatierten LBA-Größe. Dieses Feld ist nicht definiert, bevor der Namespace formatiert wird.
NCAP
Gibt die maximale Anzahl logischer Blöcke an, die zu einem beliebigen Zeitpunkt im Namespace zugeordnet werden können.
Die Anzahl der logischen Blöcke basiert auf der formatierten LBA-Größe. Dieses Feld ist nicht definiert, bevor der Namespace formatiert wird.
Das Feld NCAP wird im Fall der Thin Provisioning verwendet und meldet einen Wert, der kleiner oder gleich der Namespacegröße (Namespace Size, NSZE) ist.
Ersatz-LBAs werden nicht als Teil dieses Felds gemeldet. Der Wert von 0h
für die Namespacekapazität (Namespace Capacity, NCAP) gibt an, dass die Namespace-ID eine inaktive Namespace-ID ist. Ein logischer Block wird zugeordnet, wenn er mit einem Befehl Write oder Write Uncorrectable geschrieben wird. Ein logischer Block kann mithilfe des Befehls Datasetverwaltung zugeordnet werden.
NUSE
Gibt die aktuelle Anzahl logischer Blöcke an, die im Namespace zugeordnet sind.
Der Wert dieses Felds ist kleiner oder gleich dem Wert des NCAP-Felds Namespacekapazität.
Die Anzahl der logischen Blöcke basiert auf der formatierten LBA-Größe. Bei Verwendung des NVM-Befehlssatzes: Ein logischer Block wird zugeordnet, wenn er mit einem Befehl Write or Write Uncorrectable geschrieben wird. Ein logischer Block kann mithilfe des Befehls Datasetverwaltung zugeordnet werden.
Ein Controller kann jederzeit einen NUSE-Wert in Höhe eines NCAP-Werts melden, wenn das Produkt nicht für Thin Provisioning-Umgebungen vorgesehen ist.
NSFEAT
Eine NSFEAT-Struktur (Namespace Features) mit Feldern, die Features des Namespace definieren.
NSFEAT.ThinProvisioning
Bit 0 der NSFEAT-Struktur gibt an, ob der Namespace thin provisioning unterstützt.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace thin provisioning. Insbesondere kann die gemeldete Namespacekapazität (Namespace Capacity, NCAP) kleiner als die Namespacegröße (NSZE) sein. Wenn dieses Feature unterstützt und der Befehl Datasetverwaltung unterstützt wird, wird die Zuordnung von LBAs im Feld Namespaceauslastung (NUSE) angezeigt.
Wenn dieser Wert auf 0
gelöscht wird, gibt dies an, dass thin provisioning nicht unterstützt wird und die Felder NSZE und NCAP den gleichen Wert melden.
NSFEAT.NameSpaceAtomicWriteUnit
Bit 1 der NSFEAT-Struktur gibt an, ob Namespace Atomic Boundary Parameters für diesen Namespace definiert sind.
Wenn dieser Wert auf 1
festgelegt ist, werden die Felder NAWUN, NAWUPF und NACWU für diesen Namespace definiert und sollten vom Host für diesen Namespace anstelle der Felder AWUN, AWUPF und ACWU in der Datenstruktur Identifizieren des Controllers verwendet werden.
Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Controller die Felder NAWUN, NAWUPF und NACWU für diesen Namespace nicht. In diesem Fall sollte der Host die Felder AWUN, AWUPF und ACWU verwenden, die in der Datenstruktur "Controller identifizieren" definiert sind.
NSFEAT.DeallocatedOrUnwrittenError
Bit 2 der NSFEAT-Struktur gibt an, ob der Controller den Fehler "Deallocated" oder "Unwritten Logical Block" für diesen Namespace unterstützt.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Controller den Fehler Deallocated oder Unwritten Logical Block (NVME_STATUS_NVM_DEALLOCATED_OR_UNWRITTEN_LOGICAL_BLOCK) für diesen Namespace. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Controller den NVME_STATUS_NVM_DEALLOCATED_OR_UNWRITTEN_LOGICAL_BLOCK Fehler für diesen Namespace nicht.
NSFEAT.SkipReuseUI
Bit 3 der NSFEAT-Struktur ist eine Einstellung für das Feature Wiederverwendung überspringen.
NSFEAT.NameSpaceIoOptimization
NSFEAT.Reserved
Bits 4:7 der NSFEAT-Struktur sind reserviert.
NLBAF
Definiert die Anzahl der unterstützten Kombinationen aus LBA-Datengröße und Metadatengröße, die vom Namespace unterstützt werden.
LBA-Formate werden in der Reihenfolge (ab 0) zugeordnet und sequenziell gepackt. Dies ist ein auf 0 basierender Wert. Die maximale Anzahl von LBA-Formaten, die als unterstützt angegeben werden können, ist 16.
Die unterstützten LBA-Formate werden im LBAF-Feld angegeben (Bytes 128 – 191 dieser Datenstruktur). Die Metadaten können entweder als Teil des LBA übertragen werden (erstellen eines erweiterten LBA, der eine größere LBA-Größe darstellt, die für die Anwendung verfügbar gemacht wird) oder als separater zusammenhängender Puffer von Daten übertragen werden. Die Metadaten können nicht zwischen dem LBA und einem separaten Metadatenpuffer aufgeteilt werden.
Es wird empfohlen, dass Software und Controller auf eine LBA-Größe umstellen, die mindestens 4 KB beträgt, um die ECC-Effizienz des Controllers zu gewährleisten. Beim Bereitstellen von Metadaten wird empfohlen, dass mindestens 8 Bytes pro logischem Block bereitgestellt werden, um die Verwendung mit End-to-End-Datenschutz zu ermöglichen.
FLBAS
Eine FLBAS-Struktur (Formatted LBA Size) mit Feldern, die die Kombination aus LBA-Datengröße und Metadatengröße angeben, mit der der Namespace formatiert wurde.
FLBAS.LbaFormatIndex
Bits 0:3 der FLBAS-Struktur geben eines der 16 unterstützten LBA-Formate an, die in dieser Datenstruktur angegeben sind.
FLBAS.MetadataInExtendedDataLBA
Bit 4 der FLBAS-Struktur gibt an, ob Metadaten am Ende des Daten-LBA übertragen werden, wodurch ein erweiterter Daten-LBA erstellt wird.
Wenn dieser Wert auf 1
festgelegt ist, werden die Metadaten am Ende des Daten-LBA übertragen, wodurch ein erweiterter Daten-LBA erstellt wird. Wenn dieser Wert auf 0
gelöscht wird, gibt dies an, dass alle Metadaten für einen Befehl als separater zusammenhängender Datenpuffer übertragen werden.
Bit 4 ist nicht anwendbar, wenn keine Metadaten vorhanden sind.
FLBAS.Reserved
Bits 5:7 der FLBAS-Struktur sind reserviert.
MC
Eine Metadatenfunktionsstruktur (Metadata Capabilities, MC), die Felder enthält, die die Funktionen für Metadaten angeben.
MC.MetadataInExtendedDataLBA
Bit 0 der MC-Struktur gibt an, ob der Namespace die Metadaten unterstützt, die als Teil eines erweiterten Daten-LBA übertragen werden.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace die Metadaten, die als Teil eines erweiterten Daten-LBA übertragen werden. Wenn dieser Wert auf 0
gelöscht wird, gibt dies an, dass der Namespace die Metadaten, die als Teil eines erweiterten Daten-LBA übertragen werden, nicht unterstützt.
MC.MetadataInSeparateBuffer
Bit 1 der MC-Struktur gibt an, ob der Namespace die Metadaten unterstützt, die als Teil eines separaten Puffers übertragen werden.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace die Metadaten, die als Teil eines separaten Puffers übertragen werden, der im Feld Metadatenzeiger (MPTR) der Befehlsstruktur angegeben wird. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Namespace die Metadaten nicht, die als Teil eines separaten Puffers übertragen werden.
MC.Reserved
Bits 7:2 der MC-Struktur sind reserviert.
DPC
Eine DPC-Struktur (End-to-End Data Protection Capabilities) mit Feldern, die die Funktionen für das End-to-End-Datenschutzfeature angeben.
In diesem Feld können mehrere Bits festgelegt werden.
DPC.ProtectionInfoType1
Bit 0 der DPC-Struktur gibt an, ob der Namespace schutzinformationstyp 1 unterstützt.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace Schutzinformationstyp 1. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Namespace den Schutzinformationstyp 1 nicht.
DPC.ProtectionInfoType2
Bit 1 der DPC-Struktur gibt an, ob der Namespace schutzinformationstyp 2 unterstützt.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace den Schutzinformationstyp 2. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Namespace den Schutzinformationstyp 2 nicht.
DPC.ProtectionInfoType3
Bit 2 der DPC-Struktur gibt an, ob der Namespace den Schutzinformationstyp 3 unterstützt.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace Schutzinformationstyp 3. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Namespace den Schutzinformationstyp 3 nicht.
DPC.InfoAtBeginningOfMetadata
Bit 3 der DPC-Struktur gibt an, ob der Namespace Schutzinformationen unterstützt, die als die ersten acht Bytes von Metadaten übertragen werden.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace Schutzinformationen, die als die ersten acht Bytes von Metadaten übertragen werden. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Namespace keine Schutzinformationen, die als die ersten acht Bytes von Metadaten übertragen werden.
DPC.InfoAtEndOfMetadata
Bit 4 der DPC-Struktur gibt an, ob der Namespace Schutzinformationen unterstützt, die als die letzten acht Bytes von Metadaten übertragen werden.
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace Schutzinformationen, die als die letzten acht Bytes von Metadaten übertragen werden. Wenn dieser Wert auf 0
gelöscht wird, unterstützt der Namespace keine Schutzinformationen, die als die letzten acht Bytes von Metadaten übertragen werden.
DPC.Reserved
Bits 7:5 der DPC-Struktur sind reserviert.
DPS
Eine End-to-End-DpS-Struktur (Data Protection Type Settings) mit Feldern, die die Typeinstellungen für die End-to-End-Datenschutzfunktion angeben.
NVME_PROTECTION_INFORMATION_TYPES
DPS.ProtectionInfoTypeEnabled
Bits 2:0 der DPS-Struktur ist ein NVME_PROTECTION_INFORMATION_TYPES Wert, der angibt, ob Schutzinformationen aktiviert und der Typ der Schutzinformationen aktiviert ist.
DPS.InfoAtBeginningOfMetadata
Bit 3 der DPS-Struktur gibt an, ob die Schutzinformationen, sofern aktiviert, als die ersten acht Bytes der Metadaten übertragen werden.
Wenn dieser Wert auf 1
festgelegt ist, werden die Schutzinformationen, sofern aktiviert, als die ersten acht Bytes der Metadaten übertragen. Wenn dieser Wert auf 0
gelöscht wird, werden die Schutzinformationen, sofern aktiviert, als die letzten acht Bytes der Metadaten übertragen.
DPS.Reserved
Bits 7:4 der DPS-Struktur sind reserviert.
NMIC
Eine Namespace-Struktur mit mehreren Pfaden für E/A und NmIC (Namespace Sharing Capabilities) mit Feldern, die die E/A- und Namespacefreigabefunktionen für mehrere Pfade und Namespacefreigabefunktionen des Namespace angeben.
NMIC.SharedNameSpace
Bit 0 der NMIC-Struktur gibt an, ob es sich bei dem Namespace um einen freigegebenen Namespace handelt.
Wenn dieser Wert auf 1
festgelegt ist, kann auf den Namespace von mindestens zwei Controllern im NVM-Subsystem zugegriffen werden. Wenn dieser Wert auf 0
gelöscht wird, ist der Namespace ein privater Namespace und kann nur vom Controller zugegriffen werden, der diese Namespacedatenstruktur zurückgegeben hat.
NMIC.Reserved
Bits 7:1 der NMIC-Struktur sind reserviert.
RESCAP
Eine RESCAP-Struktur (Reservation Capabilities) mit Feldern, die die Reservierungsfunktionen des Namespace angeben.
Der Wert von 00h
in diesem Feld gibt an, dass Reservierungen von diesem Namespace nicht unterstützt werden.
FPI
Eine FPI-Struktur (Format Progress Indicator) mit Feldern, die den Prozentsatz des Namespace angeben, der noch formatiert werden muss, wenn ein Formatvorgang ausgeführt wird.
FPI.PercentageRemained
Bits 0:6 der FPI-Struktur geben den Prozentsatz des Namespace an, der noch formatiert werden muss. Beispielsweise gibt der Wert von 25
an, dass 75 % des Namespace formatiert wurden und 25 % noch formatiert werden müssen.
Der Wert von 0
gibt an, dass der Namespace mit dem Format formatiert ist, das in den Feldern FLBAS und DPS in dieser Datenstruktur angegeben ist.
FPI.Supported
Bit 7 der FPI-Struktur gibt an, ob der Namespace den vom FPI definierten Statusindikator formatiert . PercentageRemained-Feld .
Wenn dieser Wert auf 1
festgelegt ist, unterstützt der Namespace den vom FPI definierten Statusindikator formatieren . PercentageRemained-Feld . Wenn dieser Wert für 0
gelöscht wird, unterstützt der Namespace die Statusanzeige für formatieren und die FPI nicht. Das Feld PercentageRemained wird in 0h
gelöscht.
DLFEAT
DLFEAT.ReadBehavior
DLFEAT.WriteZeroes
DLFEAT.GuardFieldWithCRC
DLFEAT.Reserved
NAWUN
Gibt die namespacespezifische Größe des Schreibvorgangs an, der garantiert während des normalen Betriebs atomar in den NVM geschrieben wird.
Der Wert gibt 0h
an, dass die Größe für diesen Namespace dieselbe Größe wie im Feld AWUN der Datenstruktur "Controller identifizieren " aufweist. Alle anderen Werte geben eine Größe in Bezug auf logische Blöcke an, wobei dieselbe Codierung wie das AWUN-Feld verwendet wird.
NAWUPF
Gibt die namespacespezifische Größe des Schreibvorgangs an, der während eines Stromfehlers oder einer Fehlerbedingung garantiert atomar in den NVM geschrieben wird.
Der Wert gibt 0h
an, dass die Größe für diesen Namespace dieselbe Größe wie im Feld AWUPF der Datenstruktur "Controller identifizieren " aufweist. Alle anderen Werte geben eine Größe in Bezug auf logische Blöcke an, wobei dieselbe Codierung wie das AWUPF-Feld verwendet wird.
NACWU
Gibt die namespacespezifische Größe des Schreibvorgangs an, der garantiert atomar in den NVM geschrieben wird, für einen Vergleichs- und Schreibbefehl.
Der Wert von 0h
gibt an, dass die Größe für diesen Namespace dieselbe Größe wie im ACWU-Feld der Datenstruktur "Controller identifizieren " aufweist. Alle anderen Werte geben eine Größe in Bezug auf logische Blöcke an, wobei dieselbe Codierung wie das ACWU-Feld verwendet wird.
NABSN
Gibt die Größe der atomischen Begrenzung für diesen Namespace für den NAWUN-Wert an.
Dieses Feld wird in logischen Blöcken angegeben. Schreibvorgänge in diesen Namespace, die atomische Grenzen überschreiten, sind nicht garantiert, dass sie für den NVM in Bezug auf andere Lese- oder Schreibbefehle atomar sind.
Der Wert von 0h
gibt an, dass es keine atomaren Grenzen für normale Schreibvorgänge gibt. Alle anderen Werte geben eine Größe in Bezug auf logische Blöcke an, wobei dieselbe Codierung wie das AWUN-Feld verwendet wird.
NABO
Gibt die Logische Blockadresse (LBA) in diesem Namespace an, an der die erste atomische Grenze beginnt.
Wenn die Felder NABSN und NABSPF für 0h
gelöscht werden, wird das NABO-Feld auf 0h gelöscht. Der Wert von NABO sollte kleiner oder gleich NABSN und NABSPF sein.
NABSPF
Gibt die Größe der atomischen Grenze für diesen Namespace an, die für den Power Fail-Wert der Atomic Write Unit des Namespace spezifisch ist.
Dieses Feld wird in logischen Blöcken angegeben. Schreibvorgänge in diesen Namespace, die atomische Grenzen überschreiten, sind in Bezug auf andere Lese- oder Schreibbefehle nicht garantiert, und es gibt keine Garantie für Daten, die bei nachfolgenden Lesevorgängen der zugeordneten logischen Blöcke zurückgegeben werden.
Der Wert gibt 0h
an, dass es keine atomaren Grenzen für Leistungsfehler oder Fehlerbedingungen gibt. Alle anderen Werte geben eine Größe in Bezug auf logische Blöcke an, wobei dieselbe Codierung wie das AWUPF-Feld verwendet wird.
NOIOB
Gibt die namespaceoptimale E/A-Grenze (NOIOB) an.
NVMCAP[16]
Gibt die Gesamtgröße des NVM an, der diesem Namespace zugeordnet ist.
Der Wert dieses Felds ist in Bytes. Dieses Feld wird unterstützt, wenn die Befehle Namespace management und Namespace Attachment unterstützt werden.
Hinweis: Dieses Feld entspricht möglicherweise nicht der logischen Blockgröße multipliziert mit dem Feld Namespacegröße (NSZE). Aufgrund der schlanken Bereitstellung oder anderer Einstellungen (z. B. Ausdauer) kann dieses Feld größer oder kleiner als das gemeldete NSZE sein.
NPWG
NPWA
NPDG
NPDA
NOWS
MSSRL
MCL
MSRC
Reserved2[11]
Ein reserviertes Feld.
ANAGRPID
Reserved3[3]
Bytes 192:383A sind reserviert.
NSATTR
NSATTR.WriteProtected
NSATTR.Reserved
NVMSETID
Gibt den zugeordneten NVM-Set-Bezeichner (NVMSETID) an.
ENDGID
Gibt den zugeordneten Ausdauergruppenbezeichner (ENDGID) an.
NGUID[16]
Enthält einen 128-Bit-Wert, der global eindeutig ist und dem Namespace zugewiesen ist, wenn der Namespace erstellt wird.
Das Feld Namespace Globally Unique Identifier (NGUID) bleibt während der gesamten Lebensdauer des Namespace fest und wird über Namespace- und Controllervorgänge hinweg (z. B. Controllerzurücksetzung und Namespaceformat) beibehalten.
Dieses Feld verwendet das EUI-64-basierte 16-Byte-Bezeichnerformat.
- Bytes 114:112 enthalten den 24-Bit-company_id Wert, der von der IEEE-Registrierungsstelle zugewiesen wird.
- Bytes 119:115 enthalten eine Erweiterungsidentifer, die vom entsprechenden organization zugewiesen wird.
- Bytes 111:104 enthalten den herstellerspezifischen Erweiterungsbezeichner, der vom entsprechenden organization zugewiesen wird.
Weitere Informationen finden Sie in den IEEE EUI-64-Richtlinien. Der Controller sollte einen global eindeutigen Namespacebezeichner in diesem Feld oder das EUI64-Feld angeben, wenn der Namespace erstellt wird.
EUI64[8]
Enthält einen 64-Bit-IEEE Extended Unique Identifier (EUI-64), der global eindeutig ist und dem Namespace zugewiesen ist, wenn der Namespace erstellt wird.
Das EUI64-Feld bleibt während der gesamten Lebensdauer des Namespace fest und wird über Namespace- und Controllervorgänge hinweg (z. B. Controllerzurücksetzung und Namespaceformat) beibehalten.
Die EUI-64 ist eine Verkettung eines 24-Bit- oder 36-Bit-company_id-Werts, der von der IEEE-Registrierungsbehörde zugewiesen wird, und eines Erweiterungsbezeichners, der von der entsprechenden organization zugewiesen wird. Weitere Informationen finden Sie in den IEEE EUI-64-Richtlinien.
Der Controller sollte einen global eindeutigen Namespacebezeichner in diesem Feld oder das NGUID-Feld angeben, wenn der Namespace erstellt wird. Wenn der Controller keinen global eindeutigen 64-Bit-Bezeichner zuordnen kann, wird dieses Feld für 0h
gelöscht.
LBAF[16]
Enthält ein Array von 16 NVME_LBA_FORMAT Strukturen. Jede Struktur im Array gibt ein LBA-Format an und gibt an, dass es vom Controller unterstützt wird.
Die nullbasierte Position einer Struktur im Array entspricht dem Namen des LBA-Formats, sodass sich LBA Format 0 (LBAF0) an Position 0, LBA Format 1 (LBAF1) an Position 1 befindet usw. bis LBA Format 15 (LBAF15) an Position 15.
Reserved4[192]
VS[3712]
Dieser Bytebereich (384:4095) wird für die anbieterspezifische Nutzung (VS) zugeordnet.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 |
Kopfzeile | nvme.h |