This soft copy for use by IBM employees only.
Appendix E. The Hardware Abstraction Layer (HAL)
The Hardware Abstraction Layer is a software interface between the hardware
and the rest of the operating system that makes Windows NT portable across
platforms. The HAL also acts as the interface between the operating system and
the controlling hardware of symmetric multiprocessing processor machines
(SMP).
Windows NT Server 4.0 is shipped with a HAL for both the single or
multiprocessor platforms available from Intel, MIPS, PowerPC and Alpha. The
HAL for each platform is different; even the HAL for variants of the same
platform could differ drastically. However, the virtualized processor presented
by each HAL to the microkernel is identical.
Depending on the design of the platform, the addition of more processors in an
SMP environment could improve the performance of the server substantially.
On a machine with only one processor installed, Windows NT will, by default, try
to install the single processor version of a HAL. This is the case even when the
machine is multi-processor capable. If you accept the default of a
single-processor HAL and later wish to add a second processor, you will need to
upgrade your system. This may be a difficult task.
There are two methods to achieve this:
1. Upgrade the HAL
2. Reinstall Windows NT
These are described in the following sections.
Note
If you have a server that is multi-processor capable, we recommend that you
initially install a multiprocessor HAL. This will save you time and effort later
when and if you decide to upgrade to a multiprocessor environment.
E.1 Upgrading the HAL for Multiprocessor Use
The method described in this section makes use of the UPTOMP.EXE utility that
is available from Microsoft in the Microsoft Windows NT Server Resource Kit
(ISBN: 1-57231-344-7). When you want to upgrade a single processor computer
with Windows NT 4.0 installed to a multiprocessor system, several files have to
be changed.
Backup Your System FIRST!
We strongly recommend you backup your server before you proceed with this
process.
The affected files are:
•
NTOSKRNL.EXE (NTKRNLMP.EXE has to be copied and renamed to
NTOSKRNL.EXE)
Copyright IBM Corp. 1997 159