структура 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 false, сжатие не включено на устройстве.
DataPadding
Если задано значение TRUE, указывает, что заполнение данных включено на устройстве, поддерживающем его. Если заполнение включено, данные устройств с нулями сохраняют потоковую передачу лент до тех пор, пока данные не будут готовы. Если задано значение FALSE, заполнение данных не включено.
ReportSetmarks
Если задано значение TRUE, указывает, что метки отчетов включены на устройстве, поддерживающем его. Устройства сообщают о метках, встречающихся во время операций чтения или пространства. Если задано значение false false, метки отчетов не включены.
DefaultBlockSize
Указывает размер блока по умолчанию в байтах.
MaximumBlockSize
Указывает максимальный размер блока (в байтах) ленточного устройства или базового адаптера шины узла (HBA), в зависимости от того, что меньше.
MinimumBlockSize
Указывает минимальный размер блока в байтах.
MaximumPartitionCount
Указывает максимальное количество секций, поддерживаемых устройством.
FeaturesLow
Указывает функции, поддерживаемые этим диском. Драйвер минипорта задает флаги TAPE_DRIVE_XXX для функций, поддерживаемых диском, и очищает флаги для функций, которые не поддерживаются. Вызывающие могут использовать маски TAPE_DRIVE_XXX, определенные в minitape.h, чтобы определить, поддерживает ли диск определенную функцию. Маски доступны следующим образом:
Маска | Значение |
---|---|
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 для функций, поддерживаемых диском, и очищает флаги для функций, которые не поддерживаются. Вызывающие могут использовать маски TAPE_DRIVE_XXX, определенные в minitape.h , чтобы определить, поддерживает ли диск определенную функцию.
Маска | Значение |
---|---|
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
Указывает размер байтов зоны раннего предупреждения в конце ленты. Устройство возвращает условие проверки при входе в зону.
Требования
Требование | Ценность |
---|---|
заголовка | ntddtape.h (include Ntddtape.h, Minitape.h) |