Что означают "кусок", "блок", "смещение", "буфер" и "сектор"?

Я видел некоторые скрипты, которые имеют дело с архивом или двоичными данными или копируют файлы (не используя функции по умолчанию python), используют кусок или блок или смещение или буфер или сектора.

Я создал приложение Python, и некоторые из требований были выполнены внешними библиотеками (архивирование / извлечение данных) или двоичными файлами. Я хотел бы погрузиться глубже, чтобы получить эту третью сторону функции библиотеки в моем приложении, написав собственный модуль. Теперь я хотел бы знать, что означают эти термины и с чего я могу начать. Имеются ли какие-либо документы по вышеуказанному вопросу?

любая документация, относящаяся к этим словам на языке программирования Python, также будет оценена.

1 ответов


кусок используется для любого (обычно довольно большого) объема данных, который все еще является только частью любой размер целый, Эл. г. первые 1000 байт файла. Следующие 3000 байт могут быть следующими кусок.

блок используется для фиксированного объема данных (обычно технически определенного), который обычно является только частью целого, e. г. первые 1024 байта файла. Следующий блок также будет иметь длину 1024 байта. Кроме того, иногда используется не весь блок; второй и последний блок файла размером 1034 байта по-прежнему составляет 1024 байта, но будет использоваться только 10 байтов.

смещение - это позиционное расстояние, обычно между началом чего-либо и интересующей позицией; e. г. если 23-й байт в файле погодных данных хранит температуру, то температура смещение составляет 23 байт. Это также может быть shift позиции данных, e. г. если что-то пошло не так, и теперь файл поврежден, это может быть потому, что все байты сдвинуты на 32 байта назад (после вставки 32 нулей в начале или аналогично), то весь файл имеет смещение 32 байта.

буфер - это часть памяти, в которой вещи собираются, чтобы обрабатывать их в целом, когда буфер заполнен (или почти заполнен). Типичный пример -буферизованный вывод; здесь одиночные символы буферизованный пока строка не будет завершена, а затем вся строка печатается на терминал в одной операции записи. Иногда буферы имеют фиксированный размер, иногда они просто имеют верхний предел.

сектора как блок, часть фиксированного размера целого, но связанная даже больше с техническим происхождением. В целом в этом случае часто является аппаратным обеспечением (например, жесткий диск или компакт-диск), и обычно сектора содержать блоки.