in

В чем разница между каталогами «System32» и «SysWOW64» в Windows?

В 64 — разрядной версии Windows у вас есть две отдельные папки Program Files. А также два отдельных системных каталога, в которых хранятся библиотеки DLL и исполняемые файлы: System32 и SysWOW64. Несмотря на названия каталогов, System32 содержит 64-битные файлы, а SysWOW64 32-битных файлы. Давайте разберемся почему так происходит и зачем нам нужны эти каталоги.

Зачем нужен каталог System32?

Каталог System32 содержит системные файлы Windows, файлы библиотек .DLL, используемые программами. А также утилиты программ .EXE, которые являются частью Windows. Хотя большинство файлов, которые вы здесь найдете, являются частью операционной системы Windows, сторонние программные продукты также имеют право добавлять собственные DLL-файлы в эту папку.

Приложения, запущенные в вашей системе, обычно находятся в папке Program Files или в другом месте. Но они часто загружают общесистемные библиотеки из папки System32.

Разделение на 32-битные и 64-битные библиотеки

System32

В 64-разрядной версии Windows у вас есть папка C: \ Program Files, содержащая 64-разрядные программы и их файлы. И папка C: \ Program Files (x86), содержащая 32-разрядные программы и их файлы. Это необходимо, потому что для 64-битных программ нужны 64-разрядные DLL-файлы, а 32-разрядные программы нуждаются в 32-разрядных DLL-файлах.

Разделяя 64 и 32-разрядное программное обеспечение на две разные папки Program Files, Windows гарантирует, что при запуске программ у вас не возникнут проблемы.

Однако не все файлы DLL хранятся в Program Files. Многие системные библиотеки, включенные в Windows, хранятся в C: \ System32, а также некоторые программы добавляют туда свои собственные библиотеки. Таким образом,  так как Windows имеет отдельные 32-битные и 64-разрядные папки Program Files, у нее также есть отдельные 32-битные и 64-разрядные версии папки System32.

System32 и SysWOW64

На 32-разрядном компьютере все файлы программы находятся в C: \ Program Files, а общесистемная библиотека — C: \ System32.

На 64-битном компьютере файлы программы находятся в C: \ Program Files, а общесистемная папка C: \ Windows \ System32 содержит 64-разрядные библиотеки. 32-разрядные программы хранят свои файлы в C: \ Program Files (x86), а общесистемная папка — C: \ Windows \ SysWOW64.


Как восстановить удаленный файл: полное руководство


На первый взгляд кажется нелогичным. Несмотря на «32» в названии, папка System32 содержит 64-битные библиотеки. И, несмотря на 64 в названии, папка SysWOW64 содержит 32-битные библиотеки — по крайней мере, в 64-разрядных версиях Windows.

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

Подробнее о WOW64

WOW64

WOW64  относится к программному обеспечению Microsoft Windows, которое входит в состав операционной системы. Оно необходимо Windows для запуска 32-разрядные программы в 64-разрядной версии Windows. WoW64 перенаправляет доступ к файлам для обеспечения правильной работы программ.

Например, если вы устанавливаете 32-разрядную программу в 64-разрядной версии Windows и пытаетесь записать ее в папку C: \ Program Files, WoW64 перенапрвляет ее на C: \ Program Files (x86). И, если ей нужно получить доступ к папке C: \ Windows \ System32, WoW64 указывает на C: \ Windows \ SysWOW64. Windows делает это, используя перенаправитель файловой системы.

WOW64 также перенаправляет доступ к реестру, обеспечивая наличие отдельных областей реестра для 64-разрядных и 32-разрядных программ.

И все таки, почему же папка System32 относится к 64-разрядным, а SysWOW64 к 32-разрядным?

Все это возвращает нас к миллионному вопросу: почему же папка System32 относится к 64-разрядным, а SysWOW64 к 32-разрядным?

Ответ заключается в том, что многие 32-разрядные приложения были жестко запрограммированы для использования каталога C: \ Windows \ System32. Когда разработчики перекомпилировали эти приложения для 64-разрядных версий Windows, то они продолжали использовать каталог C: \ Windows \ System32.

Вместо того, чтобы переименовывать каталог и заставлять разработчиков переходить на новый, Microsoft оставила «System32» в качестве стандартного каталога системных библиотек. Они создали новый каталог библиотек для 32-разрядных приложений, которые они назвали «SysWOW64».

Да, немного глупо, что каталог с «32» в имени теперь 64-битный. Возможно, Microsoft должна была предвидеть это, когда назвала его C: \ Windows \ System32 в 90-х. Но, более простая схема именования будет удобной для разработчиков. Это означает, что мы будем придерживаться данного названия и расположения каталогов System32 и SysWOW64 в обозримом будущем.

Перевод статьи » What’s the Difference Between the “System32” and “SysWOW64” Folders in Windows? «

Как вы оцените нашу статью?

0 рейтинг
Upvote Downvote
Старения

Обзор технологий продления жизни и основных причин преждевременного старения

Почему NVIDIA хранит гигабайты файлов установщика на вашем жестком диске?

Почему NVIDIA хранит гигабайты файлов установщика на вашем жестком диске?