Функция TapeClassPhysicalBlockToLogicalBlock (minitape.h)
Подпрограмма TapeClassPhysicalBlockToLogicalBlock преобразует физический адрес блока в псевдологический адрес блока. Эта подпрограмма предназначена для устройств SCSI-1.
Синтаксис
ULONG TapeClassPhysicalBlockToLogicalBlock(
[in] UCHAR DensityCode,
[in] ULONG PhysicalBlockAddress,
[in] ULONG BlockLength,
[in] BOOLEAN FromBOT
);
Параметры
[in] DensityCode
Указывает код плотности носителя ленты. Эта подпрограмма поддерживает ленты со следующими кодами плотности: QIC_24, QIC_120, QIC_150, QIC_525, QIC_1000, QIC_2GB, QIC_1350 и QIC_2100.
[in] PhysicalBlockAddress
Указывает адрес физического блока, полученный командой SCSI READ POSITION.
[in] BlockLength
Задает размер логического блока в байтах.
[in] FromBOT
Значение TRUE указывает, что вычисление логического блока должно начинаться с начала ленты и учитывать заголовок физического устройства. False указывает, что лента имеет две секции, что адрес блока находится в секции каталога, и поэтому в вычислении не нужно учитывать заголовок физического устройства.
Возвращаемое значение
TapeClassPhysicalBlockToLogicalBlock возвращает адрес логического блока.
Комментарии
Драйвер ленточного миникласса вызывает TapeClassPhysicalBlockToLogicalBlock для преобразования физического адреса блока с ленточного устройства в адрес логического блока для приложения. TapeClassPhysicalBlockToLogicalBlock не требуется для драйверов SCSI-2 или более поздней версии, так как устройства, соответствующие стандартам SCSI-2 или более поздних версий, поддерживают логическую адресацию блоков.
Если драйвер ленточного миникласса вызывает эту подпрограмму с неподдерживаемым кодом плотности ленты, TapeClassPhysicalBlockToLogicalBlock возвращает физический адрес блока в возвращаемом значении, не выполняя никакого преобразования.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | minitape.h (включая Minitape.h) |
Библиотека | Tape.lib |