Назад | Перейти на главную страницу

Как я могу определить, использует ли рассматриваемый мной Windows Server многопроцессорный 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", но ни один из результатов не помог.

На машинах 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):