index.gif button
antivirus.gif button
build-specs.gif button
components.gif button
contents.gif button
pcscans.gif button
windows.gif button
news.gif button
search.gif button

BuildOrBuy Group Network | ]

BuildOrBuy News
Windows Hardware Abstraction Layer (HAL):

After much Discussion and Confusion among our Users over changing MotherBoards, we've decided to make this information available to those who insist on questioning the reasons for the HAL - Windows Hardware Abstraction Layer.

As most would ask - Can I change MotherBoards without having to reinstall Windows 2000 or Windows XP Pro... OR Vista? Yes & No. Can you - Yes. Should you - No. Since we recommend a clean install of the Windows O/S periodically, this would be as good a time and reason as any for the undertaking. Remember, the HAL is hardwired into the Windows Registry. As such, simply changing MotherBoards with differing Resources, Windows upon Reboot does not Re-Enumerate Devices as was the case with Win9X Versions.

Before proceeding, one should have a better understanding of the HAL and intended purpose. A few links will be provided for further study. For those who would proceed - Enjoy! GB

images/bullet2.gifHAL - Hardware Abstraction Layer defined:
" A thin layer of software provided by the Hardware Manufacturer that hides, or abstracts, Hardware differences from higher layers of the Operating System [Windows]. By means of the filter provided by the HAL, different types of Hardware look alike to the rest of the Operating System. This allows the Operating System to be portable from one Hardware Platform to another. The HAL also provides routines that allow a single Device Driver to support the same Device on all Platforms."

Bios HD Limitations
Bios Lock
Drive Imaging
IO Bus - Peripheral Bus
P4 Hyper Threading
Windows Help
Windows Versions
HAL References:
  1. - How to use the Sysprep tool to automate successful deployment of Windows XP
  2. Acronis Universal Restore system - backup and disaster recovery plan template for Windows XP and other OSes
  3. - HAL options after Windows XP or Windows Server 2003 Setup
  4. - Universal Imaging Utility Alternatives... "UIU works by setting up your "master" computer so that the Image that is subsequently created from it (using your favorite cloning application) can be deployed smoothly and reliably to multiple hardware platforms. Three Simple Steps to Create Universal Clones - Create your OS the way you like it, run UIU, then clone. ACPI HAL Detection / Installation."
  5. - Hardware Abstraction Layer: Microsoft Direct3D perspective.
  6. images/bullet2.gif99588 - Windows NT Hardware Abstraction Layer (HAL): WinNT HAL Defined - "The Windows NT hardware abstraction layer (HAL) refers to a layer of software that deals directly with your computer hardware. Because the HAL operates at a level between the hardware and the Windows NT executive services, applications and device drivers need not be aware of any hardware-specific information. The HAL provides routines that enable a single device driver to support a device on different hardware platforms, making device driver development much easier. It hides hardware dependent details such as I/O interfaces, interrupt controllers, and multiprocessor communication mechanisms. Applications and device drivers are no longer allowed to deal with hardware directly and must make calls to HAL routines to determine hardware specific information. Thus, through the filter provided by the HAL, different hardware configurations can be accessed in the same manner." (1993)
  7. images/bullet2.gif315341 - How to Perform an In-Place Upgrade (Reinstallation) of Windows XP: "You need Windows Setup to enumerate Plug and Play devices again, including the hardware abstraction layer (HAL)."
  8. images/ - Swapping your board without so much as a reinstall (243kB of images) - Powered by Infopop: "Help me! How do I swap out a board and not have to reinstall Windows?"
  9. images/bullet2.gif824125 - HOW TO Replace the Motherboard on a Computer That Is Running Windows 2000 or Windows Server 2003: Upgrade an Existing Motherboard (Upgrade to Windows 2000) or Replace a Failed Motherboard (Press R To repair).
  10. 298898 - How to Determine the Hardware Abstraction Layer (HAL) That Is Used in Windows XP: Procedure using Device Manager.
  11. 299340 - How to Force a Hardware Abstraction Layer During an Upgrade or New Installation of Windows XP: When you see: 'Press F6 if you need to install a third-party SCSI or RAID driver', instead - Using F5 during Installation to make HAL choices. Or F7 to load the Standard PC HAL thus bypassing the ACPI compliance check.
  12. 314477 - Error Message Windows Could Not Start Because of a Computer Disk Hardware Configuration Problem: Four Methods of Recovery Described.
  13. 309283 - HAL Options After Windows XP or Windows Server 2003 Setup:
  14. 305681 - Computer Turns Off During Text-Mode Setup If it Is Too Hot: WinXP
  15. 249694 - How to Move a Windows 2000 Installation to Different Hardware: "You can also use this procedure to replace a small system/boot disk drive with a larger system/boot disk drive, or to restore a Windows backup from a non-working computer to a different computer for disaster recovery purposes. This procedure is not recommended for domain controllers. The source and destination computers should be using the same HAL types to get favorable results." Notice - KeysNotToRestore.
  16. 234558 - HOW TO Add Support for Multiple Processors in Windows 2000:
  17. 237556 - How to Troubleshoot Windows 2000 Hardware Abstraction Layer Issues: Computer Type & HAL are synonymous. To determine Computer Type, see Windows Device Manager.
  18. 246236 - How to Upgrade Windows 2000 to Use an ACPI HAL: "If trying to change the type of HAL without running Setup, you may not be able to start Windows successfully again or you may experience hardware and other stability problems.

    You cannot change between Standard and ACPI HALs because of the different way an ACPI and a non-ACPI BIOS enumerate hardware. The copy of the hardware tree, which is kept in the registry, is stored differently for each type of HAL. If you change the HAL without running Setup again, Windows may not be able to find hardware components needed to start the computer."
  19. 216573 - How Windows Determines ACPI Compatibility: Win2000 - Importance of Bios Date.
  20. 197055 - Disabling ACPI Support in BIOS Results in Error Message: Win2000 - Behavior By Design.
  21. 216251 - HOW TO Specify a Specific or Third-Party HAL During Windows Setup:
  22. 315278 - Unable to Change Resource Settings in Windows XP Device Manager: WinXP - Behavior By Design!
  23. 298884 - It Is Now Safe to Turn the Machine Off Message When You Try to Hibernate Your Computer: WinXP - It is now safe to turn the machine off - Under a non ACPI HAL.
  24. 329972 - STOP 0x00000003 Mismatched_Hal Error Message Occurs After You Install Windows XP on a Windows Server 2003-Based Computer:
  25. 810903 - It is Now Safe to Turn Off Your Computer Error Message When You Try to Shut Down Your Computer: Win2000, WinXP - Confirming Bios APM or ACPI - No ACPI Compliance.
  26. 310718 - Performance Counter Problems with VIA 686B and Intel 815x Chipsets in Windows XP: WinXP - Chipset problems - Intel 815x chipsets (IOAPIC) & VIA 686B chipsets.
  27. 322302 - Cannot Obtain an Interrupt Resource for a PCI-PCI Bridge Device: Applies to using 'A standard HAL' or  'A non-ACPI MPS HAL.'
  28. Microsoft Windows Hardware Abstraction Layer (HAL) Development Kits:
  29. - Windows XP Setup - Missing HAL.DLL: Dual Booting Win2000 & WinXP Pro.

Copyright 1992, 1994, 1995-97, 2000-2001, BuildOrBuy Group Network News!
Web Development, Gill Boyd & Team - Posted 10/14/2003; Updated 01/22/2009