TAPE_GET_DRIVE_PARAMETERS 結構 (ntddtape.h)

TAPE_GET_DRIVE_PARAMETERS 結構會與 IOCTL_TAPE_GET_DRIVE_PARAMS 要求搭配使用,以擷取磁帶機功能的相關信息。

語法

typedef struct _TAPE_GET_DRIVE_PARAMETERS {
  BOOLEAN ECC;
  BOOLEAN Compression;
  BOOLEAN DataPadding;
  BOOLEAN ReportSetmarks;
  ULONG   DefaultBlockSize;
  ULONG   MaximumBlockSize;
  ULONG   MinimumBlockSize;
  ULONG   MaximumPartitionCount;
  ULONG   FeaturesLow;
  ULONG   FeaturesHigh;
  ULONG   EOTWarningZoneSize;
} TAPE_GET_DRIVE_PARAMETERS, *PTAPE_GET_DRIVE_PARAMETERS;

成員

ECC

當設定為 TRUE 時,表示裝置使用硬體錯誤修正。

Compression

當設定為 TRUE 時,表示支援壓縮的裝置上已啟用。 啟用壓縮時,裝置會在寫入數據之前先壓縮數據。 當設定為 FALSE 時,裝置上不會啟用壓縮。

DataPadding

當設定為 TRUE 時,表示支援資料填補的裝置上已啟用。 啟用填補時,裝置會填補零的數據,以保留磁帶串流,直到數據就緒為止。 當設定為 FALSE 時,不會啟用資料填補。

ReportSetmarks

當設定為 TRUE 時,表示在支援的裝置上啟用報告設定標記。 裝置會報告讀取或空間作業期間遇到的設定標記。 當設定為 FALSE 時,不會啟用報告設定標記。

DefaultBlockSize

表示預設區塊大小,以位元組為單位。

MaximumBlockSize

指出磁帶裝置或基礎主機總線適配卡的最大區塊大小,以位元組為單位, (HBA) ,無論大小為何。

MinimumBlockSize

表示最小區塊大小,以位元組為單位。

MaximumPartitionCount

指出裝置支援的分割區數目上限。

FeaturesLow

指出此磁碟驅動器支援的功能。 迷你埠驅動程式會針對磁碟驅動器支援的功能設定TAPE_DRIVE_XXX 旗標,並清除不支援的功能旗標。 呼叫端可以使用 minitape.h 中定義的 TAPE_DRIVE_XXX 遮罩來判斷磁碟驅動器是否支援特定功能。 可用的遮罩如下所示:

Mask 意義
TAPE_DRIVE_CLEAN_REQUESTS 裝置可以報告是否需要清除。
TAPE_DRIVE_COMPRESSION 裝置支援硬體數據壓縮。
TAPE_DRIVE_ECC 裝置支援硬體錯誤修正。
TAPE_DRIVE_EJECT_MEDIA 裝置退出媒體。
TAPE_DRIVE_EOT_WZ_SIZE 裝置可以報告區域警告大小的結束。
TAPE_DRIVE_ERASE_BOP_ONLY 裝置只會從分割區開頭標記執行清除作業。
TAPE_DRIVE_ERASE_IMMEDIATE 裝置會執行立即清除作業 ?? 也就是說,它會在清除作業開始時傳回。
TAPE_DRIVE_ERASE_LONG 裝置會執行長時間清除作業。
TAPE_DRIVE_ERASE_SHORT 裝置會執行簡短的清除作業。
TAPE_DRIVE_FIXED 裝置會建立固定的數據分割區。
TAPE_DRIVE_FIXED_BLOCK 裝置支援固定長度的區塊模式。
TAPE_DRIVE_INITIATOR 裝置會建立起始器定義的分割區。
TAPE_DRIVE_GET_ABSOLUTE_BLK 裝置提供目前的裝置特定區塊位址。
TAPE_DRIVE_GET_LOGICAL_BLK 裝置會提供目前的邏輯區塊位址 (和邏輯磁帶磁碟分區) 。
TAPE_DRIVE_PADDING 裝置支援數據填補。
TAPE_DRIVE_REPORT_SMKS 裝置支援設定標記報告。
TAPE_DRIVE_RESERVED_BIT 識別保留位的遮罩。 驅動程式不得設定這個位。
TAPE_DRIVE_SELECT 裝置會建立選取數據分割。
TAPE_DRIVE_SET_CMP_BOP_ONLY 當讀取/寫入前端位於分割區的開頭時,裝置才允許啟用壓縮。
TAPE_DRIVE_SET_EOT_WZ_SIZE 裝置支援設定中型警告大小的結尾。
TAPE_DRIVE_TAPE_CAPACITY 裝置會傳回磁帶的最大容量。
TAPE_DRIVE_TAPE_REMAINING 裝置會傳回磁帶的剩餘容量。
TAPE_DRIVE_VARIABLE_BLOCK 裝置支援可變長度區塊模式。
TAPE_DRIVE_WRITE_PROTECT 如果磁帶已啟用寫入或受寫入保護,裝置會傳回錯誤。

FeaturesHigh

如果 TAPE_DRIVE_HIGH_FEATURES是在FeaturesLow中設定,則表示此磁碟驅動器所支援的其他功能。 迷你埠驅動程式會針對磁碟驅動器支援的功能設定TAPE_DRIVE_XXX 旗標,並清除不支援的功能旗標。 呼叫端可以使用 minitape.h 中定義的TAPE_DRIVE_XXX 遮罩來判斷磁碟驅動器是否支援特定功能。

Mask 意義
TAPE_DRIVE_ABS_BLK_IMMED 裝置會將磁帶移至裝置特定的區塊位址,並在移動開始時立即傳回。
TAPE_DRIVE_ABSOLUTE_BLK 裝置會將磁帶移至裝置特定的封鎖位址。
TAPE_DRIVE_END_OF_DATA 裝置會將磁帶移至數據分割中的數據尾標記。
TAPE_DRIVE_FILEMARKS 裝置會將磁帶向前移動 (或向後移動,) 指定的檔案標記數目。
TAPE_DRIVE_FORMAT 裝置可以格式化媒體。
TAPE_DRIVE_FORMAT_IMMEDIATE 裝置可以將媒體格式化為立即命令。
TAPE_DRIVE_HIGH_FEATURES 位掩碼,表示對應至高特徵的位。
TAPE_DRIVE_LOAD_UNLOAD 裝置會啟用和停用裝置以進行進一步的作業。
TAPE_DRIVE_LOAD_UNLD_IMMED 裝置支援立即載入和卸除作業。
TAPE_DRIVE_LOCK_UNLOCK 裝置會啟用並停用磁帶退出機制。
TAPE_DRIVE_LOCK_UNLK_IMMED 裝置支援立即鎖定和解除鎖定作業。
TAPE_DRIVE_LOG_BLK_IMMED 裝置會將磁帶移至分割區中的邏輯區塊位址,並在移動開始時立即傳回。
TAPE_DRIVE_LOGICAL_BLK 裝置會將磁帶移至磁碟分區中的邏輯區塊位址。
TAPE_DRIVE_RELATIVE_BLKS 裝置會將磁帶向前移動 (或向後移動) 指定數目的區塊。
TAPE_DRIVE_REVERSE_POSITION 裝置會將磁帶往回移動區塊、檔案標記或 setmark。
TAPE_DRIVE_REWIND_IMMEDIATE 裝置支援立即倒轉作業。
TAPE_DRIVE_SEQUENTIAL_FMKS 裝置會將磁帶向前移動 (或向後移動) 到指定數目連續檔案標記的第一次出現。
TAPE_DRIVE_SEQUENTIAL_SMKS 裝置會將磁帶向前移動 (或向後移動) 到指定數目連續的 setmark。
TAPE_DRIVE_SET_BLOCK_SIZE 裝置支援設定固定長度邏輯區塊的大小,或設定可變長度區塊模式。
TAPE_DRIVE_SET_COMPRESSION 裝置會啟用和停用硬體數據壓縮。
TAPE_DRIVE_SET_ECC 裝置會啟用和停用硬體錯誤修正。
TAPE_DRIVE_SET_PADDING 裝置會啟用和停用數據填補。
TAPE_DRIVE_SET_REPORT_SMKS 裝置會啟用和停用設定標記的報告。
TAPE_DRIVE_SETMARKS 裝置會將磁帶向前移動 (或反向) 指定數目的設定標記。
TAPE_DRIVE_SPACE_IMMEDIATE 裝置支援立即間距。
TAPE_DRIVE_TENSION 裝置支援磁帶調和。
TAPE_DRIVE_TENSION_IMMED 裝置支援立即磁帶包裝。
TAPE_DRIVE_WRITE_FILEMARKS 裝置會寫入檔案標記。
TAPE_DRIVE_WRITE_LONG_FMKS 裝置會寫入長檔案標記。
TAPE_DRIVE_WRITE_MARK_IMMED 裝置支援立即寫入短和長檔案標記。
TAPE_DRIVE_WRITE_SETMARKS 裝置會寫入 setmark。
TAPE_DRIVE_WRITE_SHORT_FMKS 裝置會寫入簡短的檔案標記。

EOTWarningZoneSize

表示在磁帶結尾處早期警告區域的大小,以位元組為單位。 裝置在進入區域時會傳回檢查條件。

規格需求

需求
標頭 ntddtape.h (包含 Ntddtape.h、Minitape.h)

另請參閱

IOCTL_TAPE_GET_DRIVE_PARAMS

TapeMiniGetDriveParameters