Off-topic: [cap-talk] Microsoft EULA and VMs

David Hopwood david.nospam.hopwood at blueyonder.co.uk
Tue Dec 14 22:52:01 EST 2004


Jed at Webstart wrote:
> At 04:45 PM 12/13/2004, David Hopwood wrote:
>> Karp, Alan H wrote:
>>
>>> I'd love to use your encapsulation scheme, and it's exactly what I'd use
>>> on Linux.  I just don't know how to do it on Windows.  None of the
>>> virtual OSes, ala Xen, works with Windows, and virtual machines are too
>>> heavyweight to have one per process.
>>
>> Also, it's not clear that one VM per process would comply with 
>> Microsoft's EULA for Windows XP:
>>
>>     * Installation and use.  You may install, use, access,
>>       display and run one copy of the Product on a single
>>       computer, such as a workstation, terminal or other device
>>       ("Workstation Computer"). [...]
>>
>> Note "one copy" (per license). The license doesn't appear to interfere
>> in any way with virtualization of that copy, though, provided you can get
>> the activation procedure to work on a VM without modifying Windows code.
>>
>> <http://www.microsoft.com/windowsxp/home/eula.mspx>
>> (this clause is the same for XP Home and Pro).
> 
> Heh.  I would think that such a limitation is likely not the
> intent of Microsoft (though perhaps?) but rather a side
> effect.  I wonder what the activation procedure is based
> on - IP address, number of activations (in that case is
> there a "deactivation" procedure?).

<http://www.microsoft.com/technet/prodtechnol/winxppro/evaluate/xpactiv.mspx>

For manual activation:

# At each login, Windows XP checks to see that it is running on the same or 
# similar hardware that it was activated on. If it detects that the hardware 
# is "substantially different", reactivation is required. This check is
# performed after the SLP BIOS check discussed above, if the SLP BIOS check
# fails. This means that if your PC is pre-activated in the factory using
# the SLP pre-activation method, all the components in the PC could be
# swapped, including the motherboard, so long as the replacement motherboard
# was genuine and from the OEM with the proper BIOS. As noted above,
# installations of Windows XP made using volume licensing media and volume
# license product keys (VLKs) will not have any hardware component checking.
#
# Microsoft defines "substantially different" hardware differently for PCs
# that are configured to be dockable. Additionally, the network adapter is
# given a superior "weighting." If the PC is not dockable and a network
# adapter exists and is not changed, 6 or more of the other above values
# would have to change before reactivation was required. If a network
# adapter existed but is changed or never existed at all, 4 or more changes
# (including the changed network adapter if it previously existed) will
# result in a requirement to reactivate.

# [...] The 10 different hardware values used to create the hash are
# outlined in the table below:
#
# Table 1 Hardware hash component values
#
#    Component Name                        Example Hash Value (#o of bits)
#  1 Display Adapter                                    00010 (5)
#  2 SCSI Adapter                                       00011 (5)
#  3 IDE Adapter                                        0011 (4)
#  4 Network Adapter MAC Address                        1001011000 (10)
#  5 RAM Amount Range (i.e. 0-64mb, 64-128mb, etc)      101 (3)
#  6 Processor Type                                     011 (3)
#  7 Processor Serial Number                            000000 (6)
#  8 Hard Drive Device                                  1101100 (7)
#  9 Hard Drive Volume Serial Number                    1001000001 (10)
# 10 CD—ROM / CD-RW / DVD-ROM                           010111 (6)
#  - "Dockable"                                         0 (1)
#  - Hardware Hash version (version of algorithm used)  001 (3)


Here are VMWare's notes on this subject:
<http://www.vmware.com/support/guestnotes/doc/guestos_winxp.html>

# If you want to run Windows XP Home Edition or Professional in a virtual
# machine, be sure you have a full installation CD for the operating system.

(IOW, the "SLP BIOS check" used in the OEM preinstalled case is not
really relevant, because Windows needs to be installed from scratch in a
VM, at least for VMWare.)

# The Microsoft Windows XP product activation feature creates a numerical
# key based on the virtual hardware in the virtual machine where it is
# installed. Changes in the configuration of the virtual machine may require
# you to reactivate the operating system. There are some steps you can take
# to minimize the number of significant changes.
#
#    * Set the final memory size for your virtual machine before you
#      activate Windows XP. When you cross certain thresholds —
#      approximately 32MB, 64MB, 128MB, 256MB, 512MB and 1GB — the product
#      activation feature sees the changes as significant.
#
#      Note: The size reported to the Windows product activation feature is
#      slightly less than the actual amount configured for the virtual
#      machine. For example, 128MB is interpreted as falling in the
#      64MB-127MB range.
#
#    * Install VMware Tools before you activate Windows XP. When the SVGA
#      driver in the VMware Tools package is installed, it activates
#      features in the virtual graphics adapter that make it appear to
#      Windows XP as a new graphics adapter.
#
#    * If you want to experiment with any other aspects of the virtual
#      machine configuration, do so before activating Windows XP. Keep in
#      mind that you have 30 days for experimentation before you have to
#      activate the operating system.

Since there have to be at least 4 changes to the configuration
before reactivation is required, the most likely changes to a VM 
configuration (such as changing the memory range) are unlikely to be a
serious problem in practice. There is probably no legal way to share a
(retail) copy of Windows between a VM and directly booted partition on
the actual hardware, though, since the virtualised hardware will be too
different.

-- 
David Hopwood <david.nospam.hopwood at blueyonder.co.uk>





More information about the cap-talk mailing list