The “VHD Specifications” are available as a download from microsoft.com

The spec is a17 page document (released October 11, 2006 - Version 1.0) and covers as the name suggest the internal workings of the VHD file format (bytes, offsets, and all that good stuff).  I’ve skimmed through it and found it fascinating.

Anyway a snippet from the overview is below:

This paper describes the different virtual hard disk formats supported by Microsoft Virtual PC and Virtual Server and provides information about how to store the data.  This paper focuses on how to store the data in files on the host file system.

The reader should be familiar with virtual machine technology and terminology, such as the terms guest and host as used in the context of virtual machine architectures. The user should also be familiar with hard disk technologies and should understand how data is accessed and laid out on the physical medium.