Понимание размеров блоков LTO
В настоящее время я работаю с ленточным накопителем LTO (точнее, LTO 3) и ищу объяснение размеров блоков.
Насколько я знаю, поддерживается два режима: 0 для переменного размера блока и любое другое значение для фиксированного.
Теперь с моей стороны:
Что это вообще значит, переменный размер блока? Должен ли я писать число, кратное 265, а затем вынужден использовать тот же размер для повторного чтения, поэтому мое приложение выбирает размер блока? Значит, мне придется самостоятельно заполнять блоки, если моих данных слишком мало?
А как насчет фиксированных? Если у меня размер 265, получу ли я исключение, записывающее что-то меньшее, или драйвер автоматически заполняет блок? Должен ли я прочитать весь блок (265 байт) или я смогу прочитать только то, что мне нужно?
1 ответ
Переменный размер блока: это означает, что размер блока, записанного на ленте, может быть изменен приложениями.
tar -b
вариант является примером. Когда вы читаете данные с ленты, вы должны указать тот же размер блока, что и тот, который вы использовали при записи. В противном случае стример может не вернуть ваши данные.Фиксированный размер блока: стример использует размер блока, указанный в конфигурации устройства. При записи и чтении вы должны использовать размер блока, кратный этому фиксированному размеру. Даже в этом режиме, когда вы читаете данные с ленты, вам все равно необходимо использовать тот же размер блока, который используется для записи.