TapeClassPhysicalBlockToLogicalBlock-Funktion (minitape.h)
Die TapeClassPhysicalBlockToLogicalBlock-Routine übersetzt eine physische Blockadresse in eine pseudologische Blockadresse. Diese Routine gilt für SCSI-1-Geräte.
Syntax
ULONG TapeClassPhysicalBlockToLogicalBlock(
[in] UCHAR DensityCode,
[in] ULONG PhysicalBlockAddress,
[in] ULONG BlockLength,
[in] BOOLEAN FromBOT
);
Parameter
[in] DensityCode
Gibt den Bandmediendichtecode an. Diese Routine unterstützt Bänder mit den folgenden Dichtecodes: QIC_24, QIC_120, QIC_150, QIC_525, QIC_1000, QIC_2GB, QIC_1350 und QIC_2100.
[in] PhysicalBlockAddress
Gibt die physische Blockadresse an, die von einem SCSI READ POSITION-Befehl abgerufen wird.
[in] BlockLength
Gibt die logische Blockgröße in Bytes an.
[in] FromBOT
TRUE gibt an, dass die Berechnung des logischen Blocks am Anfang des Bandes beginnen und den Header des physischen Geräts berücksichtigen soll. FALSE gibt an, dass das Band über zwei Partitionen verfügt, dass sich die Blockadresse in der Verzeichnispartition befindet und daher kein physischer Geräteheader in die Berechnung einbezogen werden muss.
Rückgabewert
TapeClassPhysicalBlockToLogicalBlock gibt die adresse des logischen Blocks zurück.
Hinweise
Ein Band-Miniklassentreiber ruft TapeClassPhysicalBlockToLogicalBlock auf, um eine physische Blockadresse von einem Bandgerät in eine logische Blockadresse für eine Anwendung zu übersetzen. TapeClassPhysicalBlockToLogicalBlock ist für SCSI-2- oder höher-Treiber nicht erforderlich, da Geräte, die den Standards SCSI-2 oder höher entsprechen, logische Blockadressierung unterstützen.
Wenn ein Band-Miniklassentreiber diese Routine mit einem nicht unterstützten Banddichtecode aufruft, gibt TapeClassPhysicalBlockToLogicalBlock die physische Blockadresse im Rückgabewert zurück, ohne eine Übersetzung durchzuführen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | minitape.h (schließen Sie Minitape.h ein) |
Bibliothek | Tape.lib |