Сжатие диска
Эта статья нуждается в дополнительных цитатах для проверки . ( апрель 2019 г. ) |
Программная сжатия диска утилита увеличивает объем информации, которую можно хранить на жестком диске заданного размера. В отличие от утилиты сжатия файлов , которая сжимает только определенные файлы и требует от пользователя указания файлов для сжатия, утилита сжатия диска «на лету» работает автоматически через резидентное программное обеспечение, и пользователю не нужно знать о ее существовании. Поэтому сжатие диска «на лету» также известно как прозрачное сжатие диска в режиме реального времени или онлайн-сжатие диска .
Когда информацию необходимо сохранить на жесткий диск, утилита сжимает ее. Когда информацию необходимо прочитать, утилита распаковывает ее. Утилита сжатия диска отменяет стандартные процедуры операционной системы . Поскольку все программные приложения получают доступ к жесткому диску с помощью этих процедур, они продолжают работать после установки сжатия диска.
Утилиты сжатия дисков были особенно популярны в начале 1990-х годов, когда жесткие диски микрокомпьютеров были еще относительно небольшими (от 20 до 80 мегабайт ). Жесткие диски в то время также были довольно дорогими: примерно 10 долларов США за мегабайт. Для пользователей, купивших приложения для сжатия диска, это программное обеспечение в краткосрочной перспективе оказалось более экономичным средством приобретения большего дискового пространства, чем замена текущего диска на диск большего размера. Хорошая утилита сжатия диска может в среднем удвоить доступное пространство с незначительной потерей скорости. Сжатие дисков вышло из употребления к концу 1990-х годов, поскольку достижения в технологии и производстве жестких дисков привели к увеличению емкости и снижению цен.
Распространенные решения для сжатия диска
Автономное оборудование
Некоторые из первоначальных решений по сжатию диска были аппаратными и сопроцессора в дополнение к программному драйверу использовали дополнительные карты компрессора/декомпрессора. Известные решения включают в себя:
- Stacker XT/8 и Stacker AT/16 от Stac Electronics [1] [2]
- Экспанз! и Экспанз! Плюс от InfoChip Systems [1] [2] [3]
- DiskDoubler dd2000 от корпорации Datran
- MRCI (Интерфейс сжатия в реальном времени Microsoft) от Microsoft
Автономное программное обеспечение
С увеличением мощности процессора ПК чисто программные решения стали достигать или даже превосходить производительность аппаратных решений в большинстве сценариев. Эти утилиты сжатия продавались независимо. Пользователь должен был специально выбрать установку и настройку программного обеспечения.
- Хлюпать [4] [5] и Squish Plus от Sundog Software [6]
- Укладчик от Stac Electronics [2]
- XtraDrive от Интегрированных информационных технологий (IIT)
- SuperStor и SuperStor Pro от AddStor [1] [2]
- DoubleDisk и DoubleDisk Gold от Vertisoft Systems [1] [2]
- JAM (JAM.SYS) от JAM Software, Киев, Украина [7]
- DiskDoubler от Salient Software
- Двойная плотность от Data Becker
Программное обеспечение в комплекте
Идея включения сжатия дисков в новые машины понравилась торговым посредникам и пользователям. Реселлерам нравилось, что они могут требовать больше места для хранения; пользователям понравилось, что им не нужно настраивать программное обеспечение. Входящие в комплект утилиты (в хронологическом порядке):
- DR DOS 6.0 (1991) от Digital Research включала специальную версию AddStor от SuperStor .
- PalmDOS 1.0 (1992 г.) от Novell (после приобретения Digital Research) включала с поддержкой DPMS версию SuperStor .
- MS-DOS 6.0 (1993) от Microsoft , включая DoubleSpace , [8] который был частично основан на Vertisoft Systems от DoubleDisk . В MS-DOS 6.0 появился так называемый API предварительной загрузки DOS , недокументированный [9] [10] Интерфейс типа запрос-ответ программное обеспечение для сжатия диска ( DBLSPACE.BIN , который позволял автоматически загружать CONFIG.SYS . ) даже до обработки
- PC DOS 6.1 (1993) от IBM , хотя первоначальная версия не включала компрессор диска, специальная версия SuperStor/DS (после приобретения AddStor) была включена в более позднюю версию, а также представила API предварительной загрузки в линейке PC DOS. .
- MS-DOS 6.2 (1993) от Microsoft включала улучшенную версию DoubleSpace .
- Novell DOS 7 (1993) от Novell включала версию Stacker 3.12 ( STACKER.BIN ) с поддержкой DPMS от Stac Electronics , которая также поддерживала обмен сжатыми данными с удаленными серверами NetWare и PNW , также запускающими Stacker, чтобы избежать ненужного повторного сжатия при копирование файлов. [11] Он также представил поддержку API предварительной загрузки DOS 6 для обеспечения совместимости с DoubleSpace от Microsoft в сценариях мультизагрузки. [9] [11] Аналогичный механизм использовался для загрузки дополнительного одно- или многопользовательского компонента БЕЗОПАСНОСТИ .
- PTS-DOS Extended 6.4 (1994) от PhysTechSoft включал компонент сжатия диска с именем Folder ( FOLDER.SYS ). [12]
- PC DOS 6.3 (1994 г.) от IBM включала версию SuperStor/DS .
- MS-DOS 6.22 (1994) от Microsoft включала DriveSpace , который представлял собой DoubleSpace с другим алгоритмом сжатия ( DRVSPACE.BIN ), после того как MS-DOS 6.21 вообще пришлось поставлять без какого-либо программного обеспечения для сжатия диска по юридическим причинам.
- PC DOS 7.0 (1995) от IBM включала версию Stacker 4.02 с поддержкой DPMS от Stac Electronics.
- Windows 95 (1995) от Microsoft включала обновленную версию DriveSpace 2 .
- Windows 95 OSR2 (1996) от Microsoft включала урезанную версию DriveSpace 3 .
- Windows 95 Плюс! (1996) от Microsoft включала полную версию DriveSpace 3 .
- OpenDOS 7.01 (1997 г.) от Caldera (после приобретения Novell DOS) включала версию Stacker 3.12 с поддержкой DPMS . [11]
- DR-DOS 7.02 (1998) от Caldera включала версию Stacker 3.12 с поддержкой DPMS . [13] В DR-DOS 7.02 также добавлена поддержка Microsoft DriveSpace . [14]
- PC DOS 2000 (1998) от IBM включал версию Stacker 4.02 с поддержкой DPMS .
- Windows 98 (1998) от Microsoft включала полную версию DriveSpace 3 .
- DR-DOS 7.03 (1999) от Caldera включала версию Stacker 3.12 с поддержкой DPMS .
- Windows 98 SE (1999) от Microsoft включала полную версию DriveSpace 3 .
- PTS-DOS Pro 2000 (1999) от Paragon Technology Software включала компонент сжатия диска под названием DATACOMP .
Другие решения
- Squeeze — резидентный компрессор файлов DOS для файлов Lotus 1-2-3 и Lotus Symphony от Turner Hall Publishing. [15]
- Squish Plus ROM от Sundog Software , но распространявшийся исключительно через Personalized Software (теперь Taddeus Computing ), представлял собой специальный ПЗУ- чип, содержащий специальную версию Squish Plus размером всего 36 КБ, адаптированную для HP Portable Plus . [6]
- Double Tools for DoubleSpace от Addstor представлял собой дополнительный продукт, расширяющий функциональность DoubleSpace, входящего в состав MS-DOS 6.0 .
- Multimedia Stacker от Helix Software представлял собой пакет DPMS Stacker 4.01 с поддержкой от Stac в сочетании с Helix Cloaking и утилитами, использующими встроенный сервер DPMS Cloaking для перемещения и работы в защищенном режиме .
- Файловая система THS (1994–1996, Томас Шойерманн), драйвер сжатой файловой системы для Linux , который мог читать некоторые CVF . [16] [17] [18]
- DMSDOS (1996), драйвер ядра Linux, [19] [20] для поддержки чтения и записи томов DoubleSpace, DriveSpace 2 и 3, а также Stacker 3 и 4.
Хотя Windows XP от Microsoft включала как встроенную поддержку, так и команду с именем компактный , который сжимает файлы в системах NTFS и не реализован как отдельный «сжатый диск», как указано выше.
Операция
При сжатии диска обычно создается один большой файл, который становится виртуальным жестким диском. Это похоже на то, как один физический жесткий диск можно разделить на несколько виртуальных дисков. Доступ к сжатому диску осуществляется через драйвер устройства .
Сжатие существующих дисков
Все диски изначально будут пусты. Утилита для создания диска обычно предлагает «сжать текущий диск». Это означало, что утилита будет:
- Создайте пустой сжатый диск, хранящийся на существующем диске.
- Перенесите существующие файлы со старого диска на новый сжатый диск.
- При необходимости увеличьте размер нового сжатого диска, чтобы вместить больше файлов и оставить пустое место после завершения.
- Когда все файлы будут перенесены, буквы дисков поменяются местами.
Обычно некоторые системные файлы не передаются. Например, файлы подкачки ОС останутся только на главном диске.
Сжатие загрузочного диска
Для доступа к сжатому диску необходимо было загрузить драйвер устройства. Сжатый диск C: потребовал внести изменения в процесс загрузки следующие :
- Системный BIOS загружает сектор 0 первого физического жесткого диска ( главную загрузочную запись ).
- Сектор раздела загружает сектор 0 загрузочного раздела ( Загрузочная запись тома ). В данном случае это главный диск.
- Сектор 0 хост-диска загружает (в случае DOS ) BIOS DOS ( IO.SYS , IBMBIO.COM и т. д.). В зависимости от версии в память могут быть загружены только первые несколько секторов файла или весь файл целиком. В первом случае загруженная заглушка содержит еще один загрузчик, загружающий остаток файла с диска. В случае DR-DOS BIOS упакован и распаковывается самостоятельно с помощью встроенной процедуры распаковки. [14] [21]
- Затем BIOS DOS загружает ядро DOS ( MSDOS.SYS , IBMDOS.COM и т. д.).
- Если DOS поддерживает API предварительной загрузки , BIOS DOS пытается загрузить предварительно загружаемый драйвер сжатия. [9] [10] ( DBLSPACE.BIN , DRVSPACE.BIN или STACKER.BIN ) из корня хост-диска и пытается связаться с ним через API предварительной загрузки DOS. [14] [11] Если драйвер отвечает ожидаемым образом, BIOS DOS сохранит драйвер, в противном случае он будет удален. [8] Если сохранить и настроить соответствующим образом, буквы дисков могут поменяться местами, и сжатый диск станет C:.
- BIOS DOS запускает обработку CONFIG.SYS , ища файл в корне загрузочного диска. В случае DR-DOS DCONFIG.SYS имеет приоритет над CONFIG.SYS, если он присутствует. [11] [14]
- Драйверы сжатия, не загруженные через API предварительной загрузки, могут быть загружены с помощью операторов DEVICE .
- В зависимости от конфигурации и, если этого еще не произошло, буквы дисков могут поменяться местами, и сжатый диск станет C:.
- Обработка продолжается со сжатого диска.
Влияние на производительность
В системах с более медленными жесткими дисками сжатие диска может фактически повысить производительность системы. Это было достигнуто двумя способами:
- После сжатия хранилось меньше данных.
- Доступ к диску часто группировался для повышения эффективности.
Если системе приходилось часто ждать завершения доступа к жесткому диску ( привязка ввода-вывода ), преобразование жесткого диска в сжатые диски может значительно ускорить работу системы. Сжатие и распаковка данных увеличивает загрузку ЦП. Если система уже была привязана к процессору , сжатие диска снижает общую производительность. [11]
Недостатки
Некоторые распространенные недостатки использования сжатия диска:
- Не все утилиты сжатия подтверждают отсутствие ошибок в файловой системе FAT перед сжатием диска на месте. Некоторые ошибки, например перекрестные ссылки на файлы , могут привести к дополнительной потере данных в процессе передачи. [номер 1]
- Сжатый диск виден только в том случае, если драйвер устройства загружен и сжатый диск смонтирован. может загрузочный диск Например, не содержать драйвера. (Обычно это не было проблемой для решений, поставляемых в комплекте с операционными системами, за исключением случаев, когда загружались сторонние операционные системы, поскольку системные утилиты, такие как SYS, были модифицированы для копирования драйверов сжатия на загрузочные диски по умолчанию). [11] [21] и соответствующие операционные системы также будут искать их на дисках, отличных от загрузочного диска, если их там не удастся найти.)
- Удаление было проблематичным, если расширенный размер данных на сжатом диске превышал обычную емкость диска.
- Пользователи не всегда осознавали, что большой файл на главном диске содержит сжатый диск. Хотя по умолчанию он обычно был «скрыт», [номер 2] пользователи, которым большой файл показался любопытным или подозрительным, смогли его удалить. Обычно это приводит к потере данных.
См. также
- Сжатие оперативной памяти
- Сжатие данных
- Фрагментация диска
- Исполняемое сжатие
- Самораспаковывающийся архив
- крамфы
- e2compr
- СквошFS
- МДФАТ (двойное пространство)
- BitFAT (двойное пространство)
- МДБПБ (двойной пробел)
Примечания
- ^ В перекрестных файлах два файла хранят по крайней мере часть своих данных в одном и том же месте. В этом случае всегда теряется по крайней мере часть одного файла («плохой» файл). Однако если «плохой» файл скопирован, а затем удален, часть «хорошего» файла также будет удалена. Microsoft SCANDISK был создан частично для лучшей проверки файловой системы перед сжатием, чем утилита MS-DOS CHKDSK .
- ^ Например, DOS связывала с файлами до четырех атрибутов : «Системный», «Скрытый», «Только для чтения» и «Архив». Файлы с атрибутом «Система» или «Скрытый» часто не отображаются по умолчанию. Файлы с атрибутом «Система» или «Только для чтения» невозможно удалить с помощью DOS-команды ERASE или DEL . Большинство утилит сжатия помечают файл диска как минимум одним или несколькими атрибутами «Система», «Скрытый» и «Только для чтения» (многие используют все три). Однако файлы, отмеченные такими атрибутами, можно просмотреть и удалить другими способами. Кроме того, пользователь также может удалять атрибуты.
Ссылки
- ^ Перейти обратно: а б с д Словик, Линда (17 февраля 1992 г.). «Большое сжатие» . Инфомир . 14 (7): 57–63 . Проверено 6 апреля 2015 г.
- ^ Перейти обратно: а б с д и Пастрик, Грег (28 января 1992 г.). «Удвойте, нет, утроите пространство на жестком диске с помощью утилит оперативного сжатия данных» . Журнал ПК . 11 (2): 261 . Проверено 6 апреля 2015 г.
- ^ Мендельсон, Эдвард (13 ноября 1990 г.). «Плата Expanz! быстро сжимает файлы на всех типах дисков, но теряет некоторые возможности совместимости с DOS» . Журнал ПК . 9 (19): 13 . Проверено 6 апреля 2015 г.
- ^ Уокенбах, Джон (2 февраля 1987 г.). «Squish — компрессор файлов помещает данные в меньшее пространство, но медленно» . Инфомир . 9 (6):55 . Проверено 5 апреля 2015 г.
- ^ Дэвис, Стивен Рэнди (24 февраля 1987 г.). «Squish сжимает файлы перед их записью на диск» . Журнал ПК . 6 (4):46 . Проверено 6 апреля 2015 г.
- ^ Перейти обратно: а б Гольдштейн, Хэл (8 июля 1989 г.). «На 50% больше файлового пространства всего за 89,95 долларов» (PDF) . Портативная бумага . 4 (4). Персонализированное программное обеспечение , теперь Thaddeus Computing : 46 . Проверено 5 апреля 2015 г.
- ^ http://files.mpoli.fi/unpacked/software/dos/compress/jam125sw.zip/readme.doc [ текстовый файл с пустым URL-адресом ]
- ^ Перейти обратно: а б Сливка, Бенджамин В.; Штрауб, Эрик; Фридман, Ричард (июль 1993 г.). «Практическое руководство — Под капотом: изнутри MS-DOS 6 — Разработчики MS-DOS описывают оптимизацию памяти операционной системы и технологию сжатия диска» . Журнал БАЙТ . 18 (8): 197–202 . Проверено 1 ноября 2016 г. [1]
- ^ Перейти обратно: а б с Шульман, Эндрю; Браун, Ральф Д .; Макси, Дэвид; Михелс, Раймонд Дж.; Кайл, Джим (1994) [ноябрь 1993 г.]. Недокументированная DOS: Руководство программиста по зарезервированным функциям и структурам данных MS-DOS - расширено и включает MS-DOS 6, Novell DOS и Windows 3.1 (2-е изд.). Эддисон Уэсли . ISBN 0-201-63287-Х . (xviii+856+vi страниц, 3,5-дюймовая дискета) Исправления: [2] [3]
- ^ Перейти обратно: а б Чаппелл, Джефф (1994). Внутреннее устройство DOS . Эддисон Уэсли . ISBN 978-0-201-60835-9 . [4] [5] Ошибки: [6] [7] [8]
- ^ Перейти обратно: а б с д и ж г Пол, Матиас Р. (30 июля 1997 г.). NWDOS-TIPs — советы и подсказки для Novell DOS 7, с просмотром недокументированных подробностей, ошибок и обходных путей . MPDOSTIP (на немецком языке) (3-е изд.). Архивировано из оригинала 10 сентября 2017 г. Проверено 5 апреля 2015 г. NWDOSTIP.TXT — это комплексная работа по Novell DOS 7 и OpenDOS 7.01 , включая описание многих недокументированных функций и внутренних устройств. Это часть еще большей коллекции MPDOSTIP.ZIP автора, которая поддерживалась до 2001 года и в то время распространялась на многих сайтах. Предоставленная ссылка указывает на более старую версию файла NWDOSTIP.TXT, преобразованную в HTML.
- ^ «MS-DOS-Клон российского производства» . Компьютервоче . 6 мая 1994 г. Проверено 12 апреля 2015 г.
- ^ Руководство пользователя Caldera DR-DOS 7.02 . Caldera, Inc. , 1998 г. [1993, 1997]. Архивировано из оригинала 5 ноября 2016 г. Проверено 10 августа 2013 г.
- ^ Перейти обратно: а б с д Пол, Матиас Р. (2 октября 1997 г.). «Обновление Caldera OpenDOS 7.01/7.02 Alpha 3 IBMBIO.COM README.TXT» . Архивировано из оригинала 4 октября 2003 г. Проверено 29 марта 2009 г. [9]
- ^ «Сжимайте на диске в 10 раз больше электронных таблиц — SQZ! — Сжиматель данных для Lotus» . Журнал ПК . Издательство Тернер Холл: 155. 14 октября 1986 г. Проверено 18 ноября 2016 г.
- ^ ftp://sunsite.unc.edu/pub/Linux/system/Filesystems/dosfs/thsfs.tgz [ постоянная мертвая ссылка ]
- ^ «Re: Сжатие диска — укладчик — дисковое пространство и т. д.» .
- ^ http://ftp.nluug.nl/ftp/ibiblio/system/filesystems/thsfs.lsm [ текстовый файл с пустым URL-адресом ]
- ^ «DMSDOS — драйвер ядра Linux» . 18 марта 2005 г. Архивировано из оригинала 11 ноября 2016 г. Проверено 25 мая 2016 г.
- ^ «Модуль DMSDOS CVF» (dmsdoc.doc). 0.9.2.0. 19 ноября 1998 г. Архивировано из оригинала 2 ноября 2016 г. Проверено 1 ноября 2016 г.
- ^ Перейти обратно: а б DR-DOS 7.03 WHATSNEW.TXT — Изменения с DR-DOS 7.02 на DR-DOS 7.03 . Кальдера, Инк. 24 декабря 1998 г. Архивировано из оригинала 08 апреля 2019 г. Проверено 08 апреля 2019 г.
Внешние ссылки
- «Технический справочник MS-DOS 6» . Майкрософт .
- «Макет файла DoubleSpace CVF» . фф.
- «Насколько безопасно сжатие диска?» . Журнал БАЙТ . Февраль 1994 г. Архивировано из оригинала 19 июня 2008 г.
- «Как... сжать жесткие диски» . Умные вычисления . Апрель 1999 года.