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

如果在 FeaturesLow 中设置了TAPE_DRIVE_HIGH_FEATURES,则指示此驱动器支持的其他功能。 微型端口驱动程序为驱动器支持的功能设置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 设备将磁带向后移动到块、文件标记或设置标记上。
TAPE_DRIVE_REWIND_IMMEDIATE 设备支持立即回退操作。
TAPE_DRIVE_SEQUENTIAL_FMKS 设备将磁带向前移动 (或向后移动) 指定数量的连续文件标记的第一个匹配项。
TAPE_DRIVE_SEQUENTIAL_SMKS 设备将磁带向前移动 (或向后移动) 到指定数量的连续设置标记的第一个匹配项。
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 设备写入设置标记。
TAPE_DRIVE_WRITE_SHORT_FMKS 设备写入短文件标记。

EOTWarningZoneSize

指示磁带末尾的早期警告区域的大小(以字节为单位)。 设备在进入区域时返回检查条件。

要求

要求
Header ntddtape.h (包括 Ntddtape.h、Minitape.h)

另请参阅

IOCTL_TAPE_GET_DRIVE_PARAMS

TapeMiniGetDriveParameters