struttura NVCACHE_REQUEST_BLOCK (ntddscsi.h)
La struttura NVCACHE_REQUEST_BLOCK viene usata in combinazione con la richiesta di IOCTL_SCSI_MINIPORT di gestire dispositivi dischi rigidi ibridi (H-HDD), ad esempio la tecnologia Microsoft ReadyDrive. Questo argomento definisce la struttura generale sia per i dati di input che per i dati di output per una chiamata effettuata a Nv Cache Manager. Un chiamante deve compilare tutti i campi obbligatori prima di chiamare DeviceIoControl o IoBuildDeviceIoControlRequest. Il driver miniport deve eseguire la stessa operazione dopo il completamento della funzione richiesta e prima che venga restituito.
Sintassi
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;
Membri
NRBSize
Dimensione di(NVCACHE_REQUEST_BLOCK).
Function
Specifica l'operazione da eseguire, che può essere uno dei valori seguenti:
Valore | Significato |
---|---|
NRB_FUNCTION_NVCACHE_INFO | Ottenere informazioni sul supporto delle funzionalità di Gestione cache NV dal dispositivo. Al completamento di questa funzione, i campi dati richiesti vengono restituiti al chiamante. La struttura dei dati restituita è NV_FEATURE_PARAMETER. |
NRB_FUNCTION_SPINDLE_STATUS | Determinare se il dispositivo è in fase di rotazione o rotazione. Per un dispositivo ATA, è necessario un comando Check Power Mode per ottenere lo stato di selezione del dispositivo. Per un dispositivo SCSI, è possibile usare un comando Mode Sense per eseguire una query sulla modalità di alimentazione corrente del dispositivo. |
NRB_FUNCTION_NVCACHE_POWER_MODE_SET | Attivare la modalità di alimentazione di Gestione cache NV. |
NRB_FUNCTION_NVCACHE_POWER_MODE_RESET | Disattivare la modalità di alimentazione di Gestione cache NV. |
NRB_FUNCTION_FLUSH_NVCACHE | Scaricare i dati attualmente aggiunti nella memoria della cache NV per rendere disponibile lo spazio di memoria della cache NV necessario. |
NRB_FUNCTION_QUERY_PINNED_SET | Ottenere gli intervalli LBA (Logical Block Address) attualmente nel set aggiunto di Gestione cache NV. |
NRB_FUNCTION_QUERY_CACHE_MISS | Richiedere che il dispositivo segnali mancati riscontri nella cache NV negli intervalli LBA in un singolo blocco a 512 byte. |
NRB_FUNCTION_ADD_LBAS_PINNED_SET | Aggiungere i LBA specificati in NV Cache Manager Set Data to the NV Cache Manager Pinned Set if they not already .Add the NV Cache Manager Pinned Set if they not already. |
NRB_FUNCTION_REMOVE_LBAS_PINNED_SET | Rimuovere gli LBA specificati nel set di cache NV dal set di cache NV aggiunto. |
NRB_FUNCTION_QUERY_HYBRID_DISK_STATUS | Riservato per uso futuro. |
NRB_FUNCTION_PASS_HINT_PAYLOAD | Passare gli hint di I/O a un dispositivo SATA. |
NRBFlags
Riservato per uso futuro.
NRBStatus
Indica lo stato della richiesta di funzione di Gestione cache NV dal driver. Può trattarsi di uno dei valori seguenti:
Valore | Significato |
---|---|
NRB_SUCCESS | Nessun errore. |
NRB_ILLEGAL_REQUEST | Richiesta non valida rilevata dal driver della porta. |
NRB_INVALID_PARAMETER | Parametro non valido passato al driver della porta. |
NRB_INPUT_DATA_OVERRUN | Troppi dati forniti al driver della porta. |
NRB_INPUT_DATA_UNDERRUN | Dati non sufficienti forniti al driver della porta. |
NRB_OUTPUT_DATA_OVERRUN | Troppi dati restituiti dal driver di porta. |
NRB_OUTPUT_DATA_UNDERRUN | Dati non sufficienti restituiti dal driver della porta. |
Count
Numero di blocchi a 512 byte da trasferire con la funzione specificata.
LBA
Avvio dell'LBA del dispositivo per la funzione specificata.
DataBufSize
Dimensioni del buffer di dati, in byte.
NVCacheStatus
Stato restituito dal dispositivo. Per un dispositivo ATA, questo valore è il contenuto del registro di stato nel relativo file attività. Per un dispositivo SCSI, questo valore è il codice sense restituito dal dispositivo.
NVCacheSubStatus
Codice di errore restituito dal dispositivo. Per un dispositivo ATA, questo valore è il contenuto del registro errori nel relativo file attività. Per un dispositivo SCSI, questo valore è la chiave Sense restituita dal dispositivo.
Osservazioni
Per altre informazioni sul comportamento della funzione, vedere la sezione 7.20 della specifica ATA8-ACS.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | ntddscsi.h (include Ntddscsi.h) |