Если вам когда-нибудь было любопытно и вы время от времени просматривали содержимое своего компьютера, вы, возможно, заметили что-то интересное.
Те из вас, у кого установлена 64-разрядная версия Windows 10, имеют 2 папки Program Files, с той лишь разницей, что одна из них содержит в конце наименования (x86).
Помимо этих двух папок, 64-разрядные версии Windows также поставляются с двумя отдельными папками библиотек DLL, известными как System32 и SysWOW64.
System32 и SysWOW64 в Windows 10
1. System32
System32 содержит системные файлы Windows такие, как файлы библиотек DLL, используемые программами, так и служебные программы .EXE, которые являются частью Windows. Кроме того, большинство файлов, которые присутствуют здесь, принадлежат операционной системе .
Однако сторонние приложения могут поставляться со своими собственными файлами DLL, и они также могут храниться здесь.
Наконец, независимо от того, где вы на самом деле устанавливаете программу, общесистемные библиотеки, которые они используют, регулярно располагаются в System32 и SysWOW64.
2. SysWOW64
Название 64 на самом деле относится к тому факту, что оно также может содержать 32-разрядную версию Microsoft Windows в 64-разрядной версии Windows, которая является частью операционной системы.
Это позволяет Windows запускать 32-разрядные программы в 64-разрядной версии Windows.WoW64 автоматически перенаправляет доступ к файлам, чтобы обеспечить правильную работу программ.
Существует два возможных сценария установки программы:
- Если вы устанавливаете 32-разрядную программу в 64-разрядной версии Windows и она пытается записать в папку C: \ Program Files , WoW64 направит ее в C: \ Program Files (x86)
- Если программа хочет получить доступ к папке — C: \ Windows \ System32 , WoW64 указывает ей на папку — C: \ WindowsSysWOW64. Windows делает это самостоятельно, используя перенаправление файловой системы
3. System32 и SysWOW64
На 32-разрядном компьютере данные хранятся следующим образом:
- 32-битные программы хранят свои файлы в C: \ Program Files
- Общесистемное расположение библиотеки: C: \ System32
На 64-битном компьютере данные хранятся следующим образом:
- 64-битные программы хранят свои файлы в C: \ Program Files
- Общесистемная папка C: \ Windows \ System32 содержит 64-битные библиотеки.
- 32-битные программы хранят свои файлы в C: \ Program Files (x86)
- Общесистемная папка C: \ Windows \ SysWOW64
Почему эти имена так смущают и вроде как не соответствуют своим названиям?
В конце концов, кажется, что все сводится к привычкам и жесткому кодированию. 32-разрядные приложения были жестко запрограммированы для использования каталога C: \ Windows \ System32.
Когда они были перекомпилированы для 64-разрядных версий Windows, разработчики продолжали использовать каталог C: \ Windows \ System32. Таким образом, библиотека сохранила свое имя, чтобы избежать полного пересмотра кода.