Как определить уровень аппаратной абстракции в Windows Server 2008
Я исследую ошибку, которая кажется воспроизводимой только на некоторых однопроцессорных компьютерах. Я хочу знать, связано ли это с HAL.
До Server 2008 было возможно выбрать конкретный файл HAL .dll с помощью диспетчера устройств, как описано здесь - Halapic.dll является однопроцессорным, а Halmps.dll multi.
В Server 2008 я вижу три.dll в списке драйверов для моего компьютера. Соглашение об именах предполагает, что в 2008 году всегда есть драйверы для стандартных ПК, uniproc и multiproc.
У меня такой вопрос: всегда ли в Server 2008 используется Uniproc HAL на машине с одним процессором? Кроме того, есть ли способ определить, какой HAL вы используете, или принудительно использовать определенный HAL?
Спасибо
2 ответа
Я считаю, что только ACPI HAL поставляется с Windows Server 2008. Марк Руссинович кое-что упомянул об этом при обсуждении изменений в ядре. У Джеффа Чаппелла есть отличная история о HAL.
Насколько я понимаю, ядро Vista/Server 2008 не зависит от HAL, и вы не увидите различий в dll между многопроцессорной и однопроцессорной системами.