With the release of the 3.0 version of the K2000 comes a new feature allowing images to be deployed to a computer with a different processor than the one set in the image. Hal.dll injection will allow you to replace the hal.dll, kernel, and other files as a mid-level task, which will run directly after the image deployment but before the computer boots into windows.
Although the K2000 appliance can insert a different hal.dll, this is but a very small part of the overall process when it comes to allowing an image to work on more than one computer.
Here are some things to take under advisement when considering hardware independent imaging.
You must already have a hardware flexible image:
A hardware flexible image is one that will work on more than one computer so long as the hal.dll and other processor specific files are the SAME. In a hardware flexible or process specific image, drivers will need to be added to the source image to support two kinds of components: Plug and Play and Mass storage. Plug and play drivers are those loaded when Windows cannot find the driver for a certain component. These include almost every component on a computer except for the hard drive. In this case one need only add the the OEMPnPDriversPath= to the [Unattended] section. Here is an example:
[Unattended]
OemSkipEula=Yes
InstallFilesPath=C:\sysprep\i386
OEMPnPDriversPath=drivers\l; drivers\w; drivers\s
Mass storage drivers on the other hand, are not plug and play and must be added to the [MassStorageSection] of the sysprep.inf. When the image is syspreped, the process reads the information from this section into Windows. When the computer boots up after being imaged, it presents its hardware ID to Windows and expects that the operating system will know the exact path and location and name of the driver it is to load. Here is an example:
[SysprepMassStorage]
PCI\VEN_8086&DEV_2681&CC_0106=C:\drivers\m\iaahci.inf
PCI\VEN_8086&DEV_27C1&CC_0106=C:\drivers\m\iaahci.inf
PCI\VEN_8086&DEV_2682&CC_0104=C:\drivers\m\iastor.inf
PCI\VEN_8086&DEV_27C3&CC_0104=C:\drivers\m\iastor.inf
Consider the time value of money:
Consider the man hours needed to create such an image. Although hardware independent imaging is consider the Holy Grail of imaging, in the time it would take you to create this image you could simply create one image for each model of computer you have. Then there is the issue of having to update the image each time you get a new model. The way in which the KBOX 2000 stores images means they will take up for far less space than images created with other imaging tools such as Ghost.
Windows Vista and Windows 7 have only one hal.dll:
The notion of even needing hal injection will be short lived as all new windows operating systems will only ever have one hal. All that will be left for the user is to add the approapriate mass storage and plug and play drivers to make up for the differences in other hardware.