Как я могу определить, использует ли сервер Windows, на который я смотрю, HAL с поддержкой мульпроцессора?
У меня есть виртуальная машина Windows Server 2012, которой назначено только одно ядро; Я хотел бы знать, является ли HAL для машины многоядерным, прежде чем запрашивать дополнительные ядра для добавления в виртуальную машину.
Есть ли какая-нибудь команда WMIC, значение regedit или какой-то другой индикатор?
Я знаю, что в предыдущих версиях Windows я мог сказать, посмотрев на свойство "имя исходного файла" для%SystemRoot%\System32\hal.dll -> Windows Server 2012 показывает только "hal.dll".
Я просмотрел улей реестра MACHINE, но не могу найти ничего близкого к значимому. Я также гуглил "site:microsoft.com windows server hal multiprocessor", но ни один из результатов не помог.
1 ответ
На машинах x64 (а Server 2012 всегда x64) существует только один образ HAL, который называется Hal.dll. (И он всегда поддерживает SMP.)
Однако, в качестве академического эксперимента, если вы хотите увидеть, какой HAL вы используете, вы можете использовать Windbg и выполнить команду lm vm hal
, Конечно, на Server 2012 это всегда будет Hal.dll.
В более старых версиях Windows для x86 вы можете увидеть различные HAL, например: Halacpi.dll
или же Halmacpi.dll
,
Вот пример использования LiveKD (от Sysinternals):