Using alternate HALs
Serdar Yegulalp

The Hardware Abstraction Layer (HAL) and NT/2K kernel are the two most crucial components in Windows NT and 2000. If you need to replace them for any reason -- such as to run with the checked kernel, with debug symbols, to use a specially-modified version of the kernel, or to switch to a multiprocessor HAL -- it's best to create an alternate boot entry and use that instead of manually replacing files and possibly causing a disaster. (The checked kernel and the checked build of the HAL are special versions of NT that contain debugging symbols. If you're developing device drivers or doing heavy-duty programming, you load these to get detailed debug reports if something goes wrong. There's a separate checked build of NT/2K that you can purchase, which has everything (including device drivers) with debug symbols turned in.)

This is actually nowhere nearly as hard as it looks because Windows NT and Windows 2000 have provisions for this sort of thing built in. If you have an alternate HAL or alternate kernel and want to boot with them instead, here's how to do it.

  1. Copy the alternate HAL and kernel (HAL.DLL and KERNEL.DLL) into your Windows NT/2K's system32 directory. Rename them so you don't overwrite the existing kernel or HAL -- a checked build HAL could be named HALCHK.DLL, for instance. Note that kernel and HAL files must use 8.3 names.

Requires Free Membership to View

  1. Edit the system's BOOT.INI file. Copy the main boot entry and edit the string description to reflect what the alternate HAL and kernel are. If you're using the checked build, you can say something like "Windows NT Check Build" (or "Windows 2000 Checked Build").

  2. At the end of the line, place the following switches:

    /KERNEL=<kernelname> /HAL=<halname>

    where <kernelname> and <halname> are the names of the kernel and HAL files that you copied over.

  3. Save the BOOT.INI file and reboot. If all goes well, you should boot into NT/2K with the new kernel and HAL without a problem. Note that this does not cover changing other files that may be dependent on a specific HAL or kernel, but at least if it doesn't work you can just boot back to your original version of the kernel and HAL.

Serdar Yegulalp is the editor of the Windows 2000 Power Users Newsletter.

This was first published in January 2002

There are Comments. Add yours.

TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.