
Папка WinSxS не дает покоя пользователям со времен Windows Vista. И действительно, если вы зайдете в директорию Windows на системном диске и посмотрите размер папки WinSxS, то можете сильно удивиться. Что же находится в этой папке, почему она такая большая и можно ли уменьшить ее размер? Попробуем это выяснить.
Для начала напомню, что из себя представляет папка WinSxS.
Все более-менее современные операционные системы Microsoft (начиная с Windows Vista) состоят из компонентов. Компонент в Windows представляет из себя один или несколько бинарных файлов, файл-каталог и XML-файл с описанием настроек (ключи реестра, настройки безопасности и т.п.). Компоненты группируются в логические блоки, из которых собираются различные редакции Windows.
Все компоненты ОС находятся в папке WinSxS, которая является хранилищем компонентов. Каждый компонент в хранилище имеет свое уникальное имя, включающее в себя номер версии, язык локализации и архитектуру процессора, для которой он был собран. В операционной системе есть только один экземпляр каждой версии каждого файла, и экземпляр этот находится в папке WinSxS, а все остальные экземпляры представляют из себя жесткие ссылки (hard links) на файлы, находящиеся в хранилище.
По сути, в папке WinSxS содержится практически вся операционная система, включая и неустановленные компоненты. Кстати, именно поэтому при установке дополнительных компонентов система не запрашивает установочный диск.
Размер папки WinSxS изначально большой, но со временем он еще увеличивается. Происходит это из за обновления компонентов. Поскольку единицей обновления в Windows является не файл, а компонент, то при обновлении одного единственного бинарного файла выпускается новая версия всего компонента. Новая версия устанавливается в систему, при этом предыдущая не удаляется, а остается в хранилище. Такой подход дает возможность в любой момент отменить обновление и откатиться к предыдущей версии компонента.




Видео на тему


