Наряду с приобретением новой техники, распространено такое явление, как апгрейд — замена основных составляющих модулей компьютера. Для снижения трудоёмкости данного процесса очень часто осуществляется миграция установленной операционной системы вместе со всеми приложениями.
В системах Windows NT5+ используются следующие слои абстрагирования оборудования (HAL):
«Стандартный компьютер», Non-ACPI PIC HAL (Hal.dll)
• Стандартный компьютер
«Однопроцессорный компьютер с MPS», Non-ACPI APIC UP HAL (Halapic.dll)
• Стандартный компьютер
• Однопроцессорный компьютер с MPS
• Многопроцессорный компьютер с MPS
«Многопроцессорный компьютер с MPS», Non-ACPI APIC MP HAL (Halmps.dll)
• Стандартный компьютер
• Многопроцессорный компьютер с MPS
«Компьютер с ACPI», ACPI PIC HAL (Halacpi.dll)
• Стандартный компьютер
• Компьютер с ACPI
«Однопроцессорный компьютер с ACPI», ACPI APIC UP HAL (Halaacpi.dll)
• Стандартный компьютер
• Компьютер с ACPI
• Однопроцессорный компьютер с ACPI
• Многопроцессорный компьютер с ACPI
«Многопроцессорный компьютер с ACPI», ACPI APIC MP HAL (Halmacpi.dll)
• Стандартный компьютер
• Компьютер с ACPI
• Многопроцессорный компьютер с ACPI
• Многопроцессорный компьютер с MPS
На нашей тестовой машине была заменена материнская плата и установлен многоядерный процессор. В диспетчере устройств отображается Стандартный компьютер и Компьютер с ACPI:
Это объясняется тем, что система была установлена с применением одноядерного процессора.
Давайте попробуем сменить HAL на нужный:
Идём по пути самостоятельного выбора драйвера:
Среди доступных вариантов присутствуют лишь Стандартный компьютер и Компьютер с ACPI. Даже снятие отметки чекбокса "Только совместимые устройства" ничего не даёт:
Небольшое пояснение. В операционной системе Windows 2000 в диспетчере устройств можно выбрать любой тип HAL. При этом, в случае ошибки может произойти крах системы. В системах Windows XP и Windows Server 2003 из соображений безопасности неподдерживаемые типы HAL недоступны (определение поддерживаемых типов HAL производится в процессе установки системы). Как обойти это ограничение?
Откройте редактор реестра и найдите ветку
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\ACPI_HAL\0000
В ней найдите параметр acpipic_up.
Замените его на acpiapic_mp:
Заново попробуйте сменить HAL.
Что мы видим? Появились все доступные типы HAL! Выберите нужный, т.е. "Многопроцессорный компьютер с ACPI" и перезагрузите компьютер.
