Просмотров: 75195

Как сделать общие файлы

Закрыть ... [X]

SSD уже стали обычным делом, и борьба за скорость загрузки отошла на второй план, а на первый вышла схватка за след системы на диске. Microsoft представила сжатие системных файлов в Windows 8.1 Update, и в Windows 10 идея получила интересное развитие.

Как уменьшить размер Windows - Compact OS

В прошлой статье я ведь не случайно рассказывал, как правильно измерить место на диске ;)

[+] Сегодня в большой программе

История вопроса

Давайте посмотрим, что происходило с размером Windows в последнее десятилетие.

Windows Vista

как сделать общие файлы

В 2006 году Windows переходит на новую компонентную систему обслуживания, а развертывание ОС происходит путем применения к диску файлов из образа install.wim.

Как уменьшить размер Windows - Compact OS
WIM — новый формат, поддерживающий несжатое состояние и два типа сжатия. Благодаря файловому формату, систему можно распаковать в папку, применить обновления и захватить обратно в сжатый WIM-образ.

Windows 7

Система уверенно набирает популярность, и папка WinSxS становится объектом пристального внимания пограничных служб диска Цэ. У них обретают актуальность различные средства кастрации, но в массы это варварство не идет.

Оскопление Урана Кроном. Джорджо Вазари и Жерарди Христофано, XVI век

Впрочем, появляются и более осмысленные руководства, освобождающие место на диске средствами ОС за счет сжатия:

  • всего диска путем установки флажка в его свойствах
  • только системных файлов утилитой compact.exe

В усилиях энтузиастов все неплохо кроме одного – работа сжатой Windows не поддерживается.

Сама Microsoft рассуждает на тему производительности сжатия NTFS в KB251186, относящейся к диапазону Windows 2000 — Windows 7. А в KB307987 замораживает на отметке Windows XP явные инструкции по установке сжимающего флажка в свойствах диска. Я также помню, что Джозеф Конвей, сотрудник Microsoft и источник ТЗ по CBS, писал в форуме TechNet или своем блоге, что сжатие папки Windows не поддерживается.

Windows 8 — сжатие NTFS

Windows теперь должна работать и на планшетах, а у них с дисковым пространством негусто.  В Windows 8 под пресс сжатия NTFS ложатся отключенные компоненты, манифесты и предыдущие версии системных файлов, замененные обновлениями Windows Update, но необходимые для отката (остальные удаляются).

Как уменьшить размер папки winsxs
Увеличить рисунок

В Windows 8.1 добавляется /ResetBase, но он фактически удаляет уже сжатое. Внезапно, уже после выхода Windows 8.1 RTM, Microsoft привносит в утилиту очистки диска Windows 7 возможности удаления старых версий файлов, но без /ResetBase и без сжатия.

Windows 8.1 — разностное сжатие

В первой статье про очистку папки WinSxS я упоминаю разностное сжатие (delta compression), но технические подробности остаются тайной за семью печатями. Спустя полгода в блоге Ask the Core Team появляется серия статей, которая наконец-то срывает покровы с изменений в системе обслуживания Windows 8.1.

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

Внедрив разностное сжатие в Windows 8.1, Microsoft переносит его задним числом в Windows 8, выпуская обновление стека обслуживания KB2821895.

Заметьте, что текущие версии файлов ОС остаются в несжатом виде, т.е. Microsoft все еще не поддерживает сжатие Windows официально.

Windows 8.1 Update — WimBoot

Наконец, в Windows 8.1 Update на свет появляется WimBoot. Эта технология, видимо, родилась в рамках программы под кодовым названием «усилие 116» — 1GB RAM + 16GB SSD. На столь крохотном диске планшета наряду с ОС приходилось размещать образ восстановления, что не оставляло места под пользовательские файлы.

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

Таким образом, в Windows 8.1 Update впервые стала официально поддерживаться работа сжатой Windows.

Сжатие Windows 10 (Compact OS)

Задолго до официального выхода Windows 10 в блоге Windows появился на редкость расплывчатый пост об оптимизации дискового пространства новой ОС. В нем декларировались интересные улучшения, но технические подробности отсутствовали. Их и сейчас немного, впрочем.

Как уменьшить размер Windows - Compact OS

На картинке два направления экономии:

  • 4-12GB благодаря отказу от образа восстановления (на практике и больше бывает)
  • 2.6GB за счет сжатия (в х86 – 1.5GB)

Про восстановление будет следующая статья серии, а сейчас речь пойдет о механизме сжатия системных файлов под названием Compact OS.

Как выяснить статус сжатия

Windows может автоматически применять сжатие, поэтому для начала проверьте текущее состояние системы командой:

compact.exe /CompactOS:query

Наряду со статусом, в результатах также отображается рекомендация – сжимать или не сжимать.

Как выполнить сжатие

Перейти к работе с компактной ОС можно массой различных способов.

В работающей системе

Пожалуйста, сначала проверьте текущее состояние↑ и, если ОС не сжата, измерьте дисковое пространство и сообщите в комментариях подробности1

В командной строке от имени администратора:

compact.exe /CompactOS:always

Заметьте, что точкой входа в новую технологию стала хорошо знакомая утилита compact.exe! Выполнение команды займет некоторое время.

Отмена сжатия реализована так же просто:

compact.exe /CompactOS:never

В момент установки или обновления

Недавно я рассказывал про новый ключ программы установки /Compat для проверки ПК на совместимость с Windows 10. Еще одной новинкой стал ключ /Compact OS:

setup /CompactOS enable

С помощью файла ответов

И у файла ответов есть новый параметр Compact.

Microsoft-Windows-Setup\ImageInstall\OSImage\Compact

В MSDN есть интересное примечание, что установку необходимо запускать из среды Windows 10 или ее версии Windows PE (в более старые PE можно вручную добавить драйвер). Вероятно, это также применимо к ключу /Compact OS программы установки.

В момент применения образа в среде Windows PE

У DISM тоже появился новый ключ /Compact.

DISM.EXE /Apply-Image /ImageFile:INSTALL.WIM /Index:1 /ApplyDir:C:\ /Compact:ON

В MDT и ConfigMgr

Смотрите тут.

Как работает и сколько экономит сжатие

Подробной документации я не нашел, поэтому свожу в одну статью все известные мне сведения на данный момент.

Какое сжатие применяется

Для компрессии отдельных файлов утилита compact.exe использует сжатие NTFS. Такие файлы получают атрибут «Сжатый» и отображаются в проводнике синим цветом. Можно подумать, что при сжатии ОС утилита точно так же проходит по всем системным файлам, которые имеет смысл сжимать. Однако Compact OS работает иначе.

Compact OS – это эволюция технологии WimBoot. Подлежащие оптимизации файлы помещаются в скрытый контейнер (фактически WIM-файл) и сжимаются.

С точки зрения компрессии, Compact OS аналогична образу WimBoot или любому образу WIM с обычным сжатием, поскольку во всех этих случаях применяется алгоритм 4K XPRESS Huffman (для максимального сжатия WIM задействуют LZX).

Поэтому, в отличие от сжатия NTFS, файлы Compact OS не получают атрибут «Сжатый» и не помечаются другим цветом в проводнике или сторонних программах. Любопытно, что утилита TreeSize все-таки подсвечивает синим папки, в которых файлы подверглись сжатию.

Что именно сжимается

Отчет о сжатии выглядит примерно так.

Completed Compressing OS binaries. 37953 files within 17349 directories were compressed. 6 670 708 067 total bytes of data are stored in 3 953 427 362 bytes. The compression ratio is 1,7 to 1.

Сжимаются файлы в папках Windows и Program Files, а также магазинные приложения. Системные файлы обеспечивают львиную долю сэкономленного места. Это хорошо видно из отчета DISM о хранилище компонентов.

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

Ниже сведения из чистой установке Windows 10 Pro x64 RU. Напоминаю, что реальный размер хранилища складывается из первых трех строк таблицы.

Аспект До сжатия После сжатия Экономия Общие с Windows файлы 5.24GB 3.12GB 2.12GB (40%) Резервные копии
Отключенные компоненты 1.61GB 1.02GB 0.59GB (37%) Кэш и временные файлы 0.19GB 0.19GB — Реальный размер хранилища 7.05GB 4.34GB 2.71GB (38%) Занятое место на всем диске 13.50GB 10.65GB 2.85GB (21%)

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

Сравнение подходов к уменьшению следа системы на диске

Технология WimBoot позволяла без проблем установить Windows на планшет с 16GB, и у пользователя даже оставалось место для файлов. Однако была одна неприятная проблема. С каждой порцией установленных обновлений образ WimBoot становился все дальше и дальше от текущего состояния операционной системы, постепенно превращаясь в мертвый груз.

Compact OS предлагает более сбалансированный подход к экономии дискового пространства.

Аспект

Обычная установка

WimBoot

Compact OS

Алгоритм сжатия

Нет

4K XPRESS Huffman

4K XPRESS Huffman

Исходная экономия дискового пространства

Нет

Высокая

Умеренная

Увеличение размера ОС со временем

Минимальное

Значительное

Минимальное

Вопросы и ответы

Я постарался предвосхитить ваши основные вопросы.

На каких типах устройств работает Compact OS?

Поддерживаются устройства с UEFI и BIOS.

Как Windows определяет, дает ли сжатие преимущество конкретному ПК?

Точно неизвестно. В блоге Windows на первые два места поставили объем RAM и скорость CPU. Емкость диска не упоминали, но очевидно, что технология ориентирована в первую очередь на маленькие диски.

Как уменьшить размер Windows - Compact OS

Предположу, что сжатие не выполняется автоматически и не предлагается на системах с емкостью физического диска (а не системного раздела) свыше 128GB. Надеюсь, ваши отчеты в комментариях помогут прояснить расклад.

Upd. 19-Nov-15. Отчеты читателей не опровергли мое предположение, но и не позволили вывести некую формулу зависимости сжатия от размера жесткого диска. Однако читатель Максим Донников установил, что если система не использует сжатие, но сообщает, что может перейти в сжатое состояние при необходимости, то компрессия автоматически выполняется в фоне спустя некоторое время после того, как на диске образуется недостаток свободного пространства.

Как сжатие влияет на производительность? Есть ли противопоказания?

В блоге Windows расплывчатые формулировки сводятся к «все ОК», но они относятся к ситуациям, когда сжатие без вашего вмешательства реализует изготовитель ПК или сама Windows.

Я не рекомендую применять Compact OS:

  • Жестких дисках. Целевым устройством Compact OS является ПК с маленьким твердотельным накопителем. На современных жестких дисках нет проблем со свободным пространством, если только не стрелять себе в ногу. WimBoot в Windows 8.1 не поддерживалась на жестких дисках именно ввиду их недостаточной производительности. Официально Compact OS в Windows 10 годится для любых накопителей, но Microsoft советует применять ее только на SSD. У них высокая скорость последовательных трансферов, поэтому влияние на скорость запуска ОС и программ минимально.
  • ПК с зашифрованным системным диском (BitLocker). Шифрование само по себе снижает производительность, и дополнительное сжатие может только ухудшить ситуацию. Microsoft советовала избегать шифрования на системах с WimBoot, и я не вижу причин к отмене этой рекомендации для Compact OS.

Очевидно, я рассматриваю ситуацию с точки зрения оптимальной производительности в условиях значительной нагрузки на диск. Я уверен, что найдется масса людей, которые сожмут ОС на HDD или SSD с BitLocker и не заметят никаких замедлений.

Почему разжимается намного меньше файлов, чем сжимается?

Если сразу после сжатия вернуться к исходному состоянию, будет примерно такая картина

23256 files within 17349 directories were uncompressed.

По сравнению с отчетом о сжатии 2 папок обработано столько же, а файлов разжато в примерно в 1.5 раза меньше, чем сжималось ранее.

Точной причины такого поведения я не знаю. Возможно, в отчет сжатия попадают все обработанные файлы, в т.ч. с фактором 1:1, а при декомпрессии они не считаются разжатыми.

Как сочетается Compact OS и сжатие компонентов в папке WinSxS?

Технологии работают параллельно. Состояние Compact OS вы можете контролировать сами, а разностное сжатие компонентов выполняется без вашего участия и необратимо.

Продолжение следует…

Литература

В процессе подготовки статьи мне пригодились следующие материалы:

Дискуссия

Сокращение размеров и стоимости ПК ставит перед создателями Windows интересные задачи, и они не только придумывают решения, но и продолжают совершенствовать их. K еще одной стороне технологии Compact OS я вернусь чуть позже, а в следующей статье я расскажу, что еще изобрели разработчики для уменьшения следа системы на диске.

Однако в контексте дискового пространства далеко не все ПО Microsoft находится на одном уровне технологического развития. Так, Microsoft Office в этом плане выглядит неутешительно – у традиционного пакета стали нормой ежемесячные обновления весом в 500-600MB, оседающие в папке Installer, а обновления Office 2016 Click-to-Run могут отъедать гигабайты в папке ProgramData.

В комментариях напишите:

  • исходный статус сжатия Windows 10
  • модель устройства, емкость диска, марку CPU и объем RAM
  • способ текущей установки Windows 10 (обновление / чистая)
  • объем освободившегося дискового пространства после сжатия

Источник: http://www.outsidethebox.ms/17965/


Поделись с друзьями



Рекомендуем посмотреть ещё:



Загрузить файлы на Диск Салат цезарь в домашних условиях

Как сделать общие файлы Как сделать общие файлы Как сделать общие файлы Как сделать общие файлы Как сделать общие файлы Как сделать общие файлы Как сделать общие файлы Как сделать общие файлы

ШОКИРУЮЩИЕ НОВОСТИ