Freigeben über


NVCACHE_REQUEST_BLOCK-Struktur (ntddscsi.h)

Die NVCACHE_REQUEST_BLOCK-Struktur wird in Verbindung mit der IOCTL_SCSI_MINIPORT Anforderung zum Verwalten von H-HDD-Geräten (Hybrid-Festplattenlaufwerk) (z. B. Microsoft ReadyDrive-Technologie) verwendet. In diesem Thema wird die allgemeine Struktur für Eingabe- und Ausgabedaten für einen Aufruf des NV Cache-Managers definiert. Ein Aufrufer sollte alle erforderlichen Felder ausfüllen, bevor DeviceIoControl oder IoBuildDeviceIoControlRequest aufgerufen wird. Der Miniporttreiber muss dasselbe tun, nachdem die angeforderte Funktion abgeschlossen wurde und bevor sie zurückgegeben wird.

Syntax

typedef struct _NVCACHE_REQUEST_BLOCK {
  ULONG     NRBSize;
  USHORT    Function;
  ULONG     NRBFlags;
  ULONG     NRBStatus;
  ULONG     Count;
  ULONGLONG LBA;
  ULONG     DataBufSize;
  ULONG     NVCacheStatus;
  ULONG     NVCacheSubStatus;
} NVCACHE_REQUEST_BLOCK, *PNVCACHE_REQUEST_BLOCK;

Member

NRBSize

Die sizeof(NVCACHE_REQUEST_BLOCK).

Function

Gibt den auszuführenden Vorgang an, der einer der folgenden Werte sein kann:

Wert Bedeutung
NRB_FUNCTION_NVCACHE_INFO Rufen Sie nv Cache Manager-Featureunterstützungsinformationen vom Gerät ab. Nach erfolgreichem Abschluss dieser Funktion werden die erforderlichen Datenfelder an den Aufrufer zurückgegeben. Die Rückgabedatenstruktur ist NV_FEATURE_PARAMETER.
NRB_FUNCTION_SPINDLE_STATUS Ermitteln Sie, ob das Gerät gerade hoch- oder heruntergefahren wird. Für ein ATA-Gerät ist ein Check Power Mode -Befehl erforderlich, um die Spindel des Geräts status abzurufen. Für ein SCSI-Gerät kann ein Modus sense-Befehl verwendet werden, um den aktuellen Energiemodus des Geräts abzufragen.
NRB_FUNCTION_NVCACHE_POWER_MODE_SET Aktivieren Sie den NV Cache Manager-Energiemodus.
NRB_FUNCTION_NVCACHE_POWER_MODE_RESET Deaktivieren Sie den Nv Cache Manager-Energiemodus.
NRB_FUNCTION_FLUSH_NVCACHE Leeren Sie die Daten, die derzeit im NV-Cachespeicher angeheftet sind, um den erforderlichen NV-Cachespeicher verfügbar zu machen.
NRB_FUNCTION_QUERY_PINNED_SET Rufen Sie die LBA-Bereiche (Logical Block Address) ab, die sich derzeit in der angehefteten NV Cache Manager-Gruppe befinden.
NRB_FUNCTION_QUERY_CACHE_MISS Fordern Sie an, dass das Gerät NV-Cachefehler in LBA-Bereichen in einem einzelnen 512-Byte-Block meldet.
NRB_FUNCTION_ADD_LBAS_PINNED_SET Fügen Sie die IM NV Cache Manager Set Data angegebenen LBAs dem NV Cache Manager Pinned Set hinzu, falls sie noch nicht vorhanden sind.
NRB_FUNCTION_REMOVE_LBAS_PINNED_SET Entfernen Sie die LBAs, die in den NV-Cachesatzdaten angegeben sind, aus dem nv-Cache anhefteten Satz.
NRB_FUNCTION_QUERY_HYBRID_DISK_STATUS Für die zukünftige Verwendung reserviert.
NRB_FUNCTION_PASS_HINT_PAYLOAD Übergeben Sie E/A-Hinweise an ein SATA-Gerät.

NRBFlags

Für die zukünftige Verwendung reserviert.

NRBStatus

Gibt die NV Cache Manager-Funktionsanforderung an, die vom Treiber status. Mögliche Werte:

Wert Bedeutung
NRB_SUCCESS Kein Fehler.
NRB_ILLEGAL_REQUEST Vom Porttreiber erkannte ungültige Anforderung.
NRB_INVALID_PARAMETER Ungültiger Parameter, der an den Porttreiber übergeben wurde.
NRB_INPUT_DATA_OVERRUN Zu viele Daten, die dem Porttreiber zur Verfügung gestellt werden.
NRB_INPUT_DATA_UNDERRUN Dem Porttreiber werden nicht genügend Daten zur Verfügung gestellt.
NRB_OUTPUT_DATA_OVERRUN Vom Porttreiber werden zu viele Daten zurückgegeben.
NRB_OUTPUT_DATA_UNDERRUN Vom Porttreiber werden nicht genügend Daten zurückgegeben.

Count

Anzahl der 512-Byte-Blöcke, die mit der angegebenen Funktion übertragen werden sollen.

LBA

Starten des LBA des Geräts für die angegebene Funktion.

DataBufSize

Größe des Datenpuffers in Bytes.

NVCacheStatus

Vom Gerät zurückgegebener Status. Bei einem ATA-Gerät ist dieser Wert der Inhalt des Statusregisters in seiner Aufgabendatei. Bei einem SCSI-Gerät ist dieser Wert der vom Gerät zurückgegebene Sense Code.

NVCacheSubStatus

Der vom Gerät zurückgegebene Fehlercode. Bei einem ATA-Gerät ist dieser Wert der Inhalt des Fehlerregisters in der Taskdatei. Bei einem SCSI-Gerät ist dieser Wert der vom Gerät zurückgegebene Sense-Schlüssel.

Hinweise

Weitere Informationen zum Funktionsverhalten finden Sie in Abschnitt 7.20 der ATA8-ACS-Spezifikation.

Anforderungen

Anforderung Wert
Header ntddscsi.h (include Ntddscsi.h)

Weitere Informationen

IOCTL_SCSI_MINIPORT

IOCTL_SCSI_MINIPORT_NVCACHE