Различия между папками System32 и SysWOW64

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

Те из вас, у кого установлена ​​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 автоматически перенаправляет доступ к файлам, чтобы обеспечить правильную работу программ.

Существует два возможных сценария установки программы:

  1. Если вы устанавливаете 32-разрядную программу в 64-разрядной версии Windows и она пытается записать в папку C: \ Program Files , WoW64 направит ее в C: \ Program Files (x86)
  2. Если программа хочет получить доступ к папке — 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. Таким образом, библиотека сохранила свое имя, чтобы избежать полного пересмотра кода.

Добавить комментарий

Войти с помощью: