RECEIVE_TOKEN_INFORMATION_HEADER結構 (scsi.h)
RECEIVE_TOKEN_INFORMATION_HEADER 結構包含從卸載數據傳輸作業傳回狀態的資訊。
typedef struct {
UCHAR AvailableData[4];
UCHAR ResponseToServiceAction : 5;
UCHAR Reserved1 : 3;
UCHAR OperationStatus : 7;
UCHAR Reserved2 : 1;
UCHAR OperationCounter[2];
UCHAR EstimatedStatusUpdateDelay[4];
UCHAR CompletionStatus;
UCHAR SenseDataFieldLength;
UCHAR SenseDataLength;
UCHAR TransferCountUnits;
UCHAR TransferCount[8];
UCHAR SegmentsProcessed[2];
UCHAR Reserved3[6];
UCHAR SenseData[ANYSIZE_ARRAY];
} RECEIVE_TOKEN_INFORMATION_HEADER, *PRECEIVE_TOKEN_INFORMATION_HEADER;
AvailableData[4]
SenseData 陣列中可用的數據量,以及任何其他結果資訊。
ResponseToServiceAction
回應碼,指出回應所針對的命令動作。 服務動作代碼如下。
價值 | 意義 |
---|---|
SERVICE_ACTION_POPULATE_TOKEN | 回應資訊適用於 POPULATE TOKEN 命令。 |
SERVICE_ACTION_WRITE_USING_TOKEN | 回應資訊適用於 WRITE USING TOKEN 命令。 |
Reserved1
保留。
OperationStatus
複製作業的目前狀態。 狀態可以是下列其中一個值。
價值 | 意義 |
---|---|
0x01 | 作業已順利完成。 |
0x02 | 作業未成功完成。 |
0x04 | 作業已順利完成,但複製啟動器應該確認已傳輸所有數據。 |
0x10 | 作業正在進行中。 前景或背景作業狀態未知。 |
0x11 | 作業在前景進行中。 |
0x12 | 作業正在背景中進行中。 |
0x60 | 作業已終止。 可能是由現有的資源保留。 |
Reserved2
保留。
OperationCounter[2]
目前複製作業所處理的命令數目。
EstimatedStatusUpdateDelay[4]
建議的時間,以毫秒為單位,在傳送下一個 RECEIVE COPY STATUS 命令之前等候,以取得目前複製作業的更新資訊。
CompletionStatus
複製命令作業的 SCSI 狀態代碼。
SenseDataFieldLength
用於感知數據之整個數據區域的長度,以位元組為單位。 此值一律 >= SenseDataLength。
SenseDataLength
SenseData 中的數據長度,以位元組為單位,。
TransferCountUnits
套用至 TransferCount的位元組單位。 每個單位擴充都是基底 2 的指數。 例如,TRANSFER_COUNT_UNITS_KIBIBYTES乘數值為 1024,而不是 1000。 定義的單位如下。
價值 | 意義 |
---|---|
TRANSFER_COUNT_UNITS_BYTES | 傳輸計數是以位元組為單位。 |
TRANSFER_COUNT_UNITS_KIBIBYTES | 傳輸計數以 KB 為單位。 |
TRANSFER_COUNT_UNITS_MEBIBYTES | 傳輸計數以 MB 為單位。 |
TRANSFER_COUNT_UNITS_GIBIBYTES | 傳輸計數以 GB 為單位。 |
TRANSFER_COUNT_UNITS_TEBIBYTES | 傳輸計數以 TB 為單位。 |
TRANSFER_COUNT_UNITS_PEBIBYTES | 傳輸計數以 PB 為單位。 |
TRANSFER_COUNT_UNITS_EXBIBYTES | 傳輸計數以 TB 為單位。 |
TRANSFER_COUNT_UNITS_NUMBER_BLOCKS | 傳輸計數不是指數,而是以邏輯區塊長度單位為單位。 |
TransferCount[8]
作業中傳輸的數據長度。 TransferCountUnits 中的單位類型會套用至此值,以提供位元組總數。
SegmentsProcessed[2]
針對數據傳輸作業所處理的區段數目。 區段是記憶體裝置的複製提供者在內部使用的複製長度單位。 在 Windows 系統上,這個值是保留的,而且應用程式必須忽略這個成員。
Reserved3[6]
保留。
SenseData[ANYSIZE_ARRAY]
針對複製作業傳回的感知數據。
如果 RECEIVE_TOKEN_INFORMATION_HEADER 適用於 POPULATE TOKEN 命令作業,且命令已順利完成,則 RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER 結構也會出現在 SenseData 位移 SenseDataFieldLength 從 SenseData 陣列開頭處。 RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER 結構會包含建立為以命令傳送之範圍參數之數據表示法的標記。
所有多位元組值都是以大到尾格式。 在評估之前,必須轉換這些值,以符合目前平台的結束格式。
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供。 |
標頭 | scsi.h (包括 Scsi.h、Minitape.h、Storport.h) |