Side-by-side assembly (SxS) — технология устранения конфликтов между глобальными DLL в ОС Microsoft Windows. 1
Принцип работы: из файлов, содержащих ресурсы, выносимые для общего использования процессами, формируется сборка (англ. assembly). 1 При установке сборка размещается в подкаталоге системного каталога WinSxS, имеющем гарантированно уникальное имя, и регистрируется в системе под уникальным идентификатором. 1
Программа, желающая использовать ресурсы из определённых сборок, указывает их идентификаторы в манифесте — описателе свойств программы на языке XML, размещаемом либо внутри исполняемого файла, либо в отдельном файле с расширением .manifest. 1
Когда операционная система загружает приложение, и обнаруживает наличие манифеста, загрузчик библиотеки DLL операционной системы направляется к версии библиотеки DLL, соответствующей указанной в манифесте. 2
Если манифеста нет, загрузчик DLL загружает версию всех зависимостей DLL по умолчанию. 2
Некоторые преимущества технологии: программы получают возможность однозначно указывать необходимые им ресурсы общего пользования (например, конкретные версии системных DLL), а также могут сосуществовать несколько приложений, зависящих от разных версий одной и той же библиотеки DLL. 12