Так как у вас есть несколько вопросов, я собираюсь процитировать каждый, как я иду вместе ...
Я хочу знать, будет ли win 8.1 ИСТИННО использовать эти 4 ГБ для запуска x64-адресов, кроме возможности иметь доступ к этой увеличенной памяти?
Все 64-битные Windows могут "запускать адреса x64" независимо от объема ОЗУ - даже если у вас намного меньше 4 ГБ памяти (при условии, конечно, что у вас достаточно ОЗУ для работы системы вообще!). «64-разрядные адреса» и «64-разрядность» приложений относятся к виртуальному адресному пространству, а не к физическому (ОЗУ). Добавляя больше оперативной памяти в систему, вы освобождаете пространство для большего количества определенного и используемого виртуального адресного пространства, которое будет постоянно размещаться в оперативной памяти.
(И, между прочим, верно и обратное: у вас может быть 32-разрядная ОС, использующая более 4 ГБ ОЗУ - почти все версии Windows для серверов могут это делать. Опять же, "32 бит" относится к виртуальным адресам. Вы можете иметь более 4 ГБ виртуального адресного пространства, определенного в 32-разрядной системе Windows одновременно, поскольку каждый процесс определяет свои собственные 2 или 3 ГБ VAS. Таким образом, любой 32-разрядный процесс может видеть только 4 ГБ VAS, но сумма всех процессов плюс ОС может составить более 4 ГБ. Наличие более 4 ГБ оперативной памяти просто позволяет одновременно размещать в оперативной памяти больше всего виртуального адресного пространства. Я, должно быть, прочитал по крайней мере 20 различных статей, утверждающих, что «32-разрядный компьютер или ОС могут иметь доступ только к 4 ГБ ОЗУ» - категорически не соответствует действительности. Объем ОЗУ, который вы можете использовать, ограничен количеством адресных выводов, которые выходят из ЦП, и почти все современные ЦП имеют по меньшей мере 36-битный разряд, хотя необязательно так много фактических выводов.)
Или мне нужно сделать новую установку, чтобы убедиться, что она использует инструкции x64?
Точно нет.
Я должен был поднять этот вопрос, потому что win8.1 использовал 32-битный wmplayer, explorer и т.д. Как до, так и после обновления.
Я так не думаю. Что заставило тебя так думать? Почти все исполняемые файлы, поставляемые с 64-битной Windows, имеют 64-битную форму. Некоторые из них также имеют 32-битные версии.
Я не вижу никаких программ из папки windows\SysWow64. Только из windows\system32 папка появляется в диспетчере задач.
О, я вижу. Это не способ сказать. Как ни странно, exe-файлы в Windows\system32 - почти все 64-битные exe (конечно, в 64-битной Windows-установке). Смущает ...\SysWow64 в основном используется для работы 32-битного exe, поставляемого Windows, вместе с несколькими вспомогательными библиотеками DLL, которые позволяют запускать 32-битные exe-файлы в 64-битной ОС. (WOW - это сокращение от "Windows on Windows" - поддержка 32-битных приложений в 64-битной ОС Windows.)
Если вы хотите использовать диспетчер задач, чтобы увидеть, какой из ваших процессов является 64-разрядным, перейдите на вкладку "Сведения", щелкните правой кнопкой мыши заголовки столбцов, выберите "Выбрать столбцы" и включите столбец "Платформа". Вы также можете взглянуть на столбец "Имя пути к изображению", отсортировать по нему и посмотреть, как ваши пути к файлам соответствуют платформам. В моей системе есть несколько 32-битных исполняемых файлов, которые поставлялись вместе с ОС от Microsoft.
Если вы хотите получить дополнительное подтверждение того, что ваши процессы используют 64-битные адреса, загрузите и запустите Process Explorer из инструментов SysInternals. Обязательно запустите его от имени администратора. В меню "Вид" включите "Показать нижнюю панель", а затем установите "Вид нижней панели" на "DLLs".
Обратите внимание, что вы можете добавить столбец "тип изображения" на верхнюю панель - это то же самое, что и "Платформа" в диспетчере задач. (Разве вы не хотите, чтобы люди договорились о названиях этих вещей ?!)
Теперь, в верхней панели, нажмите на процесс, чтобы посмотреть в верхней панели. Поскольку у вас, вероятно, уже запущен диспетчер задач, это будет хорошим выбором (Taskmgr.exe).
На нижней панели включите столбцы "База" и "Размер", если их там еще нет. Столбец "База" показывает начальный виртуальный адрес каждого файла кода (exe, dll и т.д.) Или сопоставленного файла данных в адресном пространстве процесса. Прокрутите нижнюю панель вниз, и вы найдете множество dll, и в данном конкретном случае сам exe-файл с "базовым" адресом, который больше 0xFFFFFFFF - 4 294 967 295 десятичных знаков - это самый высокий виртуальный адрес в 32-битной системе.
Еще одна вещь, которую стоит посмотреть в Process Explorer: столбец, который доступен в верхней панели, это "Название компании". Если вы включите это и столбец "Тип изображения", а затем отсортируете по "Названию компании" (так, чтобы все "Корпорация Майкрософт" сгруппировались вместе), я думаю, вы обнаружите, что почти каждый процесс, поставляемый с Windows, имеет "Название компании" Microsoft - это 64-битный процесс. Я говорю "это пришло с Windows", потому что многие "многоуровневые продукты" MS, такие как Office и Visual Studio, являются 32-разрядными ... или, по крайней мере, они находятся в версиях, которые я установил.)
Инструмент "VmMap" SysInternals может показать вам более подробную информацию об адресном пространстве выбранного процесса. Опять же, он покажет вам множество адресов выше 0xFFFFFFFF в вашей системе x64. Это было бы сделано еще до того, как вы добавили ОЗУ.
Если что-то здесь неясно или ведет к дальнейшим вопросам, пожалуйста, не стесняйтесь спрашивать.