DetailPage-MSS-KB

Microsoft small business knowledge base

Article ID: 309283 - Last Review: May 13, 2008 - Revision: 9.1

This article was previously published under Q309283

On This Page

SUMMARY

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.

MORE INFORMATION

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)
    • Standard PC

    "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

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.

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

APPLIES TO
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows Small Business Server 2003 Premium Edition
  • Microsoft Windows Small Business Server 2003 Standard Edition
Keywords: 
kbenv kbinfo KB309283
Share
Additional support options
Ask The Microsoft Small Business Support Community
Contact Microsoft Small Business Support
Find Microsoft Small Business Support Certified Partner
Find a Microsoft Store For In-Person Small Business Support