HAL - differences in hyperv, virtual server, non-virtualized systems

1) Are there special HALs for virtualized systems as opposed to the HALs for non-virtualized systems?  

Example: I have a Windows 2000 server running virtualized in a Windows 2008 HyperV session.  When I check Computer Device Manager Hardware Computer both the virtualized session and the host system same the same thing - multiprocessor CPU.  However when I look at the respective HAL file sizes they are different.

2) Do HAL's change from OS to OS e.g. the single processor HAL for XP is different than the single processor HAL for Windows 2000 which is in turn different than the one for Windows 2003 and they are all different than the 2008 single processor HAL?  

3
(a) If there are different HAL's for different OS and different HALs for virtualized and non-virtualized systems what are the rules for deciding which one gets loaded?  Back to my example, what HAL would be loaded in a virtualized Windows 2000 server under HyperV?  

(b) If I choose to only see/utilized one CPU in my virtual session even though the system is a quadcore and in theory I could see four CPUS does that mean my virtual session has a single processor HAL as opposed to a multiprocessor HAL?


lineonecorpAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Gary CaseConnect With a Mentor RetiredCommented:
(1) No.  The system "sees" the virtualized hardware, and simply installs the HAL appropriate for that set of hardware.   It would be identical on a system with that actual hardware (For example, Virtual PC 2007 virtualizes an Intel 440BX chipset; S3 Trio video card; Intel/DEC 21140 NIC; and a Soundblaster 16 PNP sound card => if you installed an OS on that actual system, it would be identical to the installation in a Virtual PC 2007 virtual machine).

(2)  Yes & No :-)   Yes, the files will be different, as the OS's have different interface specifications, so the HAL has to be coded specifically for that OS.   But no, they're not conceptually different -- they're simply implementing the same effective interface specifications in two different operating environments.

(3)  a - n/a
      b -  Yes, the OS in the virtual machine will only "see" what the virtual machine presents to it (in this case a single core).
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.