хлопать
Оригинальный автор(ы) | Расти Рассел |
---|---|
Разработчик(и) | Клаус Кноппер |
Стабильная версия | 2.637-1
/ 12 января 2011 г |
Размер | 338 КБ |
Тип | Загружаемый модуль ядра |
Лицензия | GNU GPL v2 [1] |
Веб-сайт | ноппикс |
Устройство сжатого цикла ( cloop ) — это модуль ядра Linux . Он добавляет поддержку прозрачно распакованных блочных устройств только для чтения . Это не сжатая файловая система : Cloop в основном используется как удобный способ сжатия обычных файловых систем на Live CD .
Первоначально Cloop был написан Levanta для загрузочной визитной карточки Расти Расселом , но сейчас поддерживается Клаусом Кноппером , автором Knoppix .
Для программного обеспечения характерна степень сжатия около 2,5:1. Например, образ cloop Knoppix имеет размер 700 МБ в сжатом виде и около 1,8 ГБ в несжатом виде.
Дизайн
[ редактировать ]Клоп-изображения содержат:
- Сценарий оболочки (с командами монтирования образа)
- Заголовок с количеством блоков и размером несжатого блока.
- Индекс поиска со сжатыми и несжатыми размерами блоков в парах.
- zlib — сжатые блоки данных, упакованные сквозным образом.
Блоки данных сжимаются отдельно; это позволяет искать отдельные блоки без необходимости распаковки всего изображения с самого начала, но ценой небольшого снижения степени сжатия. В образах Live CD обычно используется размер блока 256 КБ как компромисс между скоростью распаковки и эффективностью использования пространства.
Apple использует аналогичный формат файлов в сжатом варианте образов дисков DMG .
Ограничения
[ редактировать ]Конструкция драйвера Cloop требует, чтобы сжатые блоки считывались с диска целиком. Это существенно замедляет доступ к циклу при большом количестве разрозненных операций чтения, что может произойти, если в системе недостаточно памяти или когда запускается большая программа с множеством общих библиотек. Большой проблемой является время поиска для приводов CD-ROM (~80 мс), которое во много раз превышает время поиска для жестких дисков (~10 мс). С другой стороны, поскольку файлы упакованы вместе, чтение сжатого блока может привести к попаданию в кэш более одного файла. Известно, что эффект упаковки хвостов сокращает время поиска (см. reiserfs , btrfs ), особенно для небольших файлов. Были проведены некоторые тесты производительности, связанные с Cloop. [2]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Лицензия указана в Readme в архиве , заархивировано 7 марта 2012 г. на Wayback Machine .
- ^ Тестирование производительности Cloop на ThinkPad T61 [ мертвая ссылка ] 31 декабря 2011 г.
Внешние ссылки
[ редактировать ]- Cloop исходные коды для основных ядер Linux и патч для поддержки любого известного формата Cloop. Примечание: версии 0.xx предназначены для ядра 2.2; 1.xx предназначены для ядра 2.4; 2.xx предназначены для ядра 2.4 и 2.6.
- Cloop на Knoppix Linux Wiki (инструкции по установке находятся здесь)
- Слайды из презентации Клауса Кноппера на LinuxTag о реализации cloop (на немецком языке).
- Драйвер Fuse для Cloop с патчем ( описание ) для поддержки любого известного формата Cloop и двоичных файлов .