В чем разница между «Program Files» и «Program Files (х86)»
Основное различие между «Program Files» и «Program Files (x86)» является то, что 64-разрядными приложения устанавливаются в папку «Program Files», а 32-разрядные приложения устанавливаются в папку «Program Files (x86)».
В 64-битной ОС Windows мы видим два типа папок на диске C. Это «Program Files» и «Program Files (x86)» . В этой статье рассматривается разница между «Program Files» и «Program Files (х86)» .
Основные условия
32-битные, 64-битные, «Program Files», «Program Files (x86)»
Что такое «Program Files»
В 64-разрядной ОС Windows 64-разрядное программное обеспечение устанавливается в папку «Program Files» . Эта ОС предоставляет возможность выполнять как 64-битные, так и 32-битные программы одновременно. Эта ОС способна запускать 32-битные приложения, используя слой эмулятора.
Что такое «Program Files (x86)»
32-битные приложения устанавливаются в папку «Program Files (x86)» . Цель этих двух папок — обеспечить обратную совместимость. Другими словами, это позволяет без проблем выполнять 32-битные приложения на 64-битных машинах. Кроме того, хранение всех файлов в одной папке затруднит доступ к файлам. Поэтому 32-разрядное программное обеспечение устанавливается в эту отдельную папку.
Не удаётся найти «С:Program Failes (x86)Search ExtensionsClient.exe» Как исправить ?
Вы наверняка видели на своем компьютере папки «C:Program Files» и «C:Program Files (x86)». И наверняка замечали, что программы устанавливаются как в одну паку, так и в другую. Давайте разберемся, почему так.
32-битная и 64-разрядная Windows
Изначально Windows была доступна только в 32-разрядной версии. В данных версиях мы видим только папку «C:Program Files», которая является рекомендуемым местом для устанавливаемых программ.
В 64-разрядных версиях Windows 64-разрядные приложения устанавливаются в папку Program Files. Однако 64-разрядные версии Windows также поддерживают 32-разрядные программы, и Microsoft не хочет, чтобы 32-битное и 64-битное программное обеспечение смешивались в одном месте. Таким образом, 32-разрядные программы по умолчанию устанавливаются в папку «C: Program Files (x86)».
Windows запускает 32-разрядные приложения в 64-разрядных версиях Windows с использованием WOW64. Когда вы запускаете 32-разрядную программу в 64-разрядной версии Windows, уровень эмуляции WOW64 плавно перенаправляет доступ к файлу с «C:Program Files» на «C:Program Files (x86)».
Что хранится в каждой папке
Таким образом, в 32-разрядной версии Windows у вас есть только папка «C:Program Files», которая содержит все установленные 32-разрядные программы.
В 64-разрядной версии Windows 64-разрядные программы хранятся в папке «C:Program Files», а 32-разрядные программы хранятся в папке «C:Program Files (x86)».
Какие файлы и папки можно смело удалять в Windows 10 для оптимизации и увеличения свободного места?
Вот почему разные программы устанавливаются в разные папки.
Почему они разделяются?
Функция совместимости, предназначенная для старых 32-разрядных программ, которые могут не знать, что 64-разрядная версия Windows вообще существует, поэтому Windows исключает их общение с 64-битным кодом напрямую.
32-разрядные программы не могут загружать 64-разрядные библиотеки ( DLL-файлы ) и могут вылетать, если они попытались загрузить определенный DLL-файл и обнаружили 64-битную версию вместо 32-разрядной. То же самое касается 64-разрядных программ. Наличие независимых программных файлов для разных архитектур процессоров предотвращает подобные ошибки.
Например, предположим, что Windows просто использовала бы одну папку Program Files. 32-разрядное приложение будет искать файл DLL Microsoft Office, найденный в C:Program FilesMicrosoft Office, и попытаться загрузить его. Однако, если у вас установлена 64-разрядная версия Microsoft Office, приложение будет аварийно завершено и не будет работать должным образом, т.к. оно не сможет найти DLL вообще, потому что 64-разрядная версия Microsoft Office будет располагаться по адрему C:Program FilesMicrosoft Office, а 32-разрядное приложение будет искать в C:Program Files (x86)Microsoft Office.
Это также помогает, когда разработчик создает как 32-битную, так и 64-разрядную версии приложения, особенно если они должны быть установлены сразу в некоторых ситуациях. 32-разрядная версия автоматически устанавливается в C:Program Files (x86), а 64-разрядная версия автоматически устанавливается в C:Program Files. Если Windows использовала одну папку, разработчику приложения пришлось бы установить 64-разрядную папку в другую папку, чтобы разделить их. И, вероятно, не было бы реального стандарта, где разработчики устанавливали разные версии.
Почему 32-битная папка называется (x86)?
Вы не всегда будете видеть «32-разрядные» и «64-битные». Вместо этого вы иногда видите «x86» и «x64» для обозначения этих двух разных архитектур. Это потому, что на ранних компьютерах использовался чип Intel 8086. Исходные чипы были 16-битными, но более новые версии стали 32-битными. «X86» теперь относится ко всем «версиям» до 64-битной архитектуре — будь то 16-разрядная или 32-разрядная. Новую 64-битную архитектуру так же этого называют «x64».
Папка «Program Files (x86)», это папка для программ с использованием старой архитектуры процессора x86. Заметим, однако, что 64-разрядные версии Windows не могут запускать 16-разрядный код .
Это обычно не имеет значения
Обычно не имеет значения, хранятся ли файлы программы в Program Files или Program Files (x86). Windows автоматически устанавливает программы в правильную папку, поэтому вам не нужно об этом думать. Программы отображаются в меню «Пуск» и функционируют нормально, независимо от того, где они установлены. Обе 32-разрядные и 64-разрядные программы должны хранить ваши данные в папках, таких как AppData и ProgramData, а не в любой папке Program Files. Просто позвольте вашим программам автоматически решать, какую папку Program Files использовать.
Иногда вам нужно знать, где хранится программа. Допустим, вы хотите войти в свой каталог Steam для резервного копирования некоторых файлов. Вы найдете его в C:Program Files (x86), так как Steam — это 32-разрядная программа.
Если вы не знаете какая версия программы у вас установленна 32 или 64-битная, то вы можете посмотреть в диспетчере задач Windows.
В 64-разрядных версиях Windows 32-разрядные программы помечены дополнительным «(32-bit)» текстом, давая вам подсказку, что вы найдете их в C:Program Files (x86).
Источник: procompy.ru