This article describes hardware abstraction layer (HAL)
options that are listed in Device Manager after you run Windows XP
Setup or Windows Server 2003 Setup. The article also discusses
supportability issues that involve HALs in Sysprep images.
Back to the top
Windows XP Device Manager and Windows Server 2003 Device
Manager list limited choices for changing your HAL type when you click
Update Driver. Microsoft Windows 2000 Device Manager lets you
select any HAL type.
If you select an incorrect HAL, you may not be
able to start Windows 2000, or you may have other issues. Although the
selections are now limited, you should change the HAL only if you are sure that
the selected HAL works on your system. The options that are presented here are
known to be compatible with most systems. However, a few systems may experience
problems.
When you install the following HALs on a Windows XP-based or
Windows Server 2003-based computer, the following device manager HAL options
appear:
| | "Standard PC," Non-ACPI PIC HAL (Hal.dll) |
| | "MPS Uniprocessor PC," Non-ACPI APIC UP HAL (Halapic.dll)| • | Standard PC | | • | MPS Uniprocessor | | • | MPS Multiprocessor |
|
| | "MPS Multiprocessor PC," Non-ACPI APIC MP HAL (Halmps.dll)| • | Standard PC | | • | MPS Multiprocessor |
|
| | "Advanced Configuration and Power Interface (ACPI) PC," ACPI PIC HAL (Halacpi.dll)| • | Standard PC | | • | Advanced Configuration and Power Interface (ACPI)
PC |
|
| | "ACPI Uniprocessor PC," ACPI APIC UP HAL (Halaacpi.dll)| • | Standard PC | | • | Advanced Configuration and Power Interface (ACPI)
PC | | • | ACPI Uniprocessor | | • | ACPI Multiprocessor |
|
| | "ACPI Multiprocessor PC," ACPI APIC MP HAL (Halmacpi.dll)| • | Standard PC | | • | Advanced Configuration and Power Interface (ACPI)
PC | | • | ACPI Multiprocessor | | • | MPS Multiprocessor |
|
Notes| • | A common symptom when deploying the incorrect image to a
computer is that the Sysprep image stops responding on restart or reports the
following error message: Stop
0x0000007b |
| • | If an incorrect HAL is forced during Setup or by using a
System Preparation Image (Sysprep), you can see the correct list of HALs only
if you perform a new installation of Windows XP or Windows Server 2003. You
cannot change to a HAL other than what is listed in Device Manager. |
| • | Device Manager does not permit the change from a Non-ACPI
HAL to an ACPI HAL. You must use a new install of Windows XP or Windows Server
2003 for this kind of change. Change from an ACPI HAL to a Non-ACPI HAL only
for troubleshooting purposes. |
| • | On Windows XP and later versions, the ACPI Uniprocessor HAL
and the MPS Uniprocessor HAL recognize the existence of more than one processor
and report the MP ID. Plug and Play detects that the computer devnode's
hardware ID list has changed and moves the devnode back through the "found new
hardware" detection process. Therefore, when you add a second processor, the MP
files (HAL and kernels) are automatically installed, and you do not have to
manually update the driver in Device Manager. |
| • | Microsoft does not support running a HAL other than the HAL
that Windows Setup would typically install on the computer. For example,
running a PIC HAL on an APIC computer is not supported. Although this
configuration may appear to work, Microsoft does not test this configuration
and you may have performance and interrupt issues. Microsoft also does not
support swapping out the files that are used by the HAL to manually change HAL
types. |
| • | Microsoft recommends that you switch HALs for
troubleshooting purposes only or to workaround a hardware problem. |
| • | When you create a Sysprep image, the image must contain the
correct HAL type for the target computer. The following list describes the
computers that you can deploy a particular Sysprep image to based on the HAL
type in the source computer:
| • | You can deploy a Sysprep image created on a computer
that uses a Standard PC, Non-ACPI PIC HAL (Hal.dll) to a computer that uses the following HAL types:
| • | Standard PC, Non-ACPI PIC HAL (Hal.dll) |
| | • | You can deploy a Sysprep image created on a computer
that uses an Advanced Configuration and Power Interface (ACPI) PC, ACPI PIC HAL (Halacpi.dll) to a computer that uses the following HAL types:
| • | Advanced Configuration and Power Interface (ACPI)
PC, ACPI PIC HAL (Halacpi.dll) |
| | • | You can deploy a Sysprep image created on a computer
that uses a MPS Uniprocessor PC, Non-ACPI APIC UP HAL (Halapic.dll) to a computer that uses the following HAL types:
| • | MPS Uniprocessor PC, Non-ACPI APIC UP HAL
(Halapic.dll) | | • | MPS Multiprocessor PC, Non-ACPI APIC MP HAL
(Halmps.dll) |
| | • | You can deploy a Sysprep image created on a computer
that uses a MPS Multiprocessor PC, Non-ACPI APIC MP HAL (Halmps.dll) to a computer that uses the following HAL types:
| • | MPS Multiprocessor PC, Non-ACPI APIC MP HAL
(Halmps.dll) | | • | MPS Uniprocessor PC, Non-ACPI APIC UP HAL
(Halapic.dll) |
| | • | You can deploy a Sysprep image created on a computer
that uses an ACPI Uniprocessor PC, ACPI APIC UP HAL (Halaacpi.dll) to a computer that uses the following HAL types:
| • | ACPI Uniprocessor PC, ACPI APIC UP HAL
(Halaacpi.dll) | | • | ACPI Multiprocessor PC, ACPI APIC MP HAL
(Halmacpi.dll) |
| | • | You can deploy a Sysprep image created on a computer
that uses an ACPI Multiprocessor PC, ACPI APIC MP HAL (Halmacpi.dll) to a computer that uses the following HAL types:
| • | ACPI Multiprocessor PC, ACPI APIC MP HAL
(Halmacpi.dll) | | • | ACPI Uniprocessor PC, ACPI APIC UP HAL
(Halaacpi.dll) |
|
|
Note Currently, the options in Device Manager do not list an APIC
version of the HAL when you change the HAL on an APIC system. Although the PIC
HAL that is installed may work, you can select the preferred APIC version after
you install a hotfix for computers that are running Windows Server 2003 with
Service Pack 1.
For more information about the hotfix for Windows Server 2003
Service Pack 1, click the following article number to view the article in the
Microsoft Knowledge Base:
923425 (http://support.microsoft.com/kb/923425/)
You do not have the option to downgrade to a hardware abstraction layer that is set up to use a single-processor advanced programmable interrupt controller when you try to change the computer type by using Device Manager in Windows Server 2003
Back to the top
About UpdateUPHal
UpdateUPHal was designed for the following scenarios.
Scenario 1
Source computer: MPS Multiprocessor (NON-ACPI APIC MP)
Destination computer: MPS Uniprocessor (NON-ACPI APIC UP)
To force the ACPI Uniprocessor HAL, use the following entry:
UpdateUPHal=MPS_UP, %windir%\inf\hal.inf
Scenario 2
Source computer: ACPI Multiprocessor (ACPI APIC MP)
Destination computer: ACPI Uniprocessor (ACPI APIC UP)
To force the Uniprocessor HAL, use the following entry:
UpdateUPHal=ACPIAPIC_UP, %windir%\inf\hal.inf
In this scenario, an easier solution is to create the image on the
ACPI Uniprocessor computer. Windows XP and Windows Server 2003 will
automatically install the ACPI Multiprocessor HAL if the computer supports it.
Back to the top
About UpdateHal
UpdateHal was designed for the following scenarios.
Scenario 1
Source computer: MPS Uniprocessor (NON-ACPI APIC UP)
Destination computer: MPS Multiprocessor (NON-ACPI APIC MP)
In this scenario, use the following entry:
UpdateHal=MPS_MP, %windir%\inf\hal.inf
Note This entry is required only for Windows 2000 Server. Windows XP
and Windows Server 2003 automatically upgrade to the MPS Multiprocessor HAL.
Scenario 2
Source computer: ACPI Uniprocessor (ACPI APIC UP)
Destination computer: ACPI Multiprocessor (ACPI APIC MP)
In this scenario, use the following entry:
UpdateHal=ACPIAPIC_MP, %windir%\inf\hal.inf
Note This entry is required only for Windows 2000 Server. Windows XP
and Windows Server 2003 automatically upgrade to the ACPI Multiprocessor HAL.
For more information about how to force a HAL, click the
following article number to view the article in the Microsoft Knowledge Base:
299340 (http://support.microsoft.com/kb/299340/)
How to force a Hardware Abstraction Layer during an upgrade or an installation of Windows XP
For more information about how to
reinstall Windows XP, click the following article number to view the article in
the Microsoft Knowledge Base:
315341 (http://support.microsoft.com/kb/315341/)
How to perform an in-place upgrade (reinstallation) of Windows XP
Back to the top