VHD (Virtual Hard Disk) and its successor VHDX are
file format
A file format is a Computer standard, standard way that information is encoded for storage in a computer file. It specifies how bits are used to encode information in a digital storage medium. File formats may be either proprietary format, pr ...
s representing a virtual
hard disk drive
A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating platters coated with magn ...
(HDD). They may contain what is found on a physical HDD, such as
disk partitions and a
file system
In computing, file system or filesystem (often abbreviated to fs) is a method and data structure that the operating system uses to control how data is stored and retrieved. Without a file system, data placed in a storage medium would be one lar ...
, which in turn can contain
files
File or filing may refer to:
Mechanical tools and processes
* File (tool), a tool used to ''remove'' fine amounts of material from a workpiece
**Filing (metalworking), a material removal process in manufacturing
** Nail file, a tool used to gent ...
and
folders. They are typically used as the hard disk of a
virtual machine
In computing, a virtual machine (VM) is the virtualization/ emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized har ...
, are built into modern versions of
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
, and are the native file format for
Microsoft
Microsoft Corporation is an American multinational corporation, multinational technology company, technology corporation producing Software, computer software, consumer electronics, personal computers, and related services headquartered at th ...
's
hypervisor
A hypervisor (also known as a virtual machine monitor, VMM, or virtualizer) is a type of computer software, firmware or hardware that creates and runs virtual machines. A computer on which a hypervisor runs one or more virtual machines is called ...
(
virtual machine
In computing, a virtual machine (VM) is the virtualization/ emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized har ...
system),
Hyper-V.
The format was created by
Connectix for their Virtual PC product, known as
Microsoft Virtual PC since Microsoft acquired Connectix in 2003. VHDX was introduced in Windows 8/Windows Server 2012 to add features and flexibility missing in VHD that had become apparent over time.
Since June 2005, Microsoft has made the VHD and VHDX Image Format Specifications available to third parties under the
Microsoft Open Specification Promise.
Features
A Virtual Hard Disk allows multiple operating systems to reside on a single
host machine. This method enables developers to test software on different operating systems without the cost or hassle of installing a second hard disk or
partitioning a single hard disk into multiple volumes. The ability to directly modify a
virtual machine
In computing, a virtual machine (VM) is the virtualization/ emulation of a computer system. Virtual machines are based on computer architectures and provide functionality of a physical computer. Their implementations may involve specialized har ...
's hard disk from a host server supports many applications, including:
* Moving files between a VHD and the host file system
* Backup and recovery
* Antivirus and security
* Image management and patching
* Disk conversion (physical to virtual, and vice versa)
* Life-cycle management and provisioning (re)
VHDX was added in Hyper-V in Windows Server 2012 to add larger storage capacity, data corruption protection, and optimizations to prevent performance degradation on large-sector physical disks.
Supported formats
VHDs are implemented as files that reside on the native host file system. The following types of VHD formats are supported by Microsoft Virtual PC and
Virtual Server:
* Fixed hard disk image: a file that is allocated to the size of the virtual disk. Fixed VHDs consist of a
raw disk image followed by a VHD footer (512 or formerly 511 bytes).
* Dynamic hard disk image: a file that at any given time is as large as the actual data written to it, plus the size of the header and footer. Dynamic and differencing VHDs begin with a copy of the VHD footer (padded to 512 bytes), and for dynamic or differencing VHDs created by Microsoft products this results in a VHD-cookie string ''
'' at the beginning of the VHD file.
* Differencing hard disk image: a set of modified blocks (maintained in a separate file referred to as the "child image") in comparison to a parent image. The Differencing hard disk image format allows the concept of ''Undo Changes'': when enabled, all changes to a hard drive contained within a VHD (the parent image) are stored in a separate file (the child image). Options are available to undo the changes to the VHD, or to merge them permanently into the VHD. Different child images based on the same parent image also allow "cloning" of VHDs; at least the
globally unique identifier
A universally unique identifier (UUID) is a 128-bit label used for information in computer systems. The term globally unique identifier (GUID) is also used.
When generated according to the standard methods, UUIDs are, for practical purposes, un ...
(GUID) must be different.
* Linked to a hard disk (aka pass-through): a file that contains a link to a physical hard drive or partition of a physical hard drive.
Advantages
Significant benefits result from the ability to boot a physical computer from a virtual hard drive:
* Ease of deployment: IT organizations can deploy standardized, 'pre-built' configurations on a single VHD. As an example, software engineering organizations that need a specific set of tools for a particular project could simply 'pull' the appropriately-configured VHD from a network location.
* Backup-and-Restore: Changes to the contents of a VHD (such as infection by a virus, or accidental deletion of critical files) are easily undone.
* Multi-User Isolation: Many current operating systems support having multiple users, but offer varying degrees of protection between them (e.g., one user of the OS could become infected by a virus that infects other users, or make changes to the OS that affect other users). By giving each user their own version of the operating system—say, by creating for each of them a differencing VHD based on a base installation of the OS—changes to any particular child image would have no effect on any of the other child images.
Native VHD Boot
''Native VHD Boot'' refers to the ability of a physical computer to
mount and boot from an operating system contained within a VHD.
Windows 7
Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on July 22, 2009, and became generally available on October 22, 2009. It is the successor to Windows Vista, released nearl ...
Enterprise and Ultimate editions support this ability, both with and without a host operating system present.
Windows Server 2008 R2
Windows Server 2008 R2 is the fifth version of the Windows Server operating system produced by Microsoft and released as part of the Windows NT family of operating systems. It was released to manufacturing on July 22, 2009, and became generally ...
is also compatible with this feature.
Even, there is a technique by which VHD can be indexed in the BCD entry of windows and it is a constructive way to install and run Windows on VHD without any third-party Virtual box.
Limitations
The VHD format has a built-in limitation of just under 2
TiB (2040
GiB) for the size of any dynamic or differencing VHDs.
This is due to a sector offset table that only allows for the maximum of a 32-bit quantity. It is calculated by multiplying 2
32 by 512 bytes for each sector.
The formula in the VHD specification allows a maximum of sectors.
About 127
GiB is also the limit for VHDs in
Windows Virtual PC. For fewer than sectors (about 31 GiB) the CHS-value in the VHD footer uses a minimum of and a maximum of heads with sectors per track. The CHS algorithm then determines .
The specification does not discuss cases where the CHS value in the VHD footer does not match the (virtual) CHS geometry in the
Master Boot Record
A master boot record (MBR) is a special type of boot sector at the very beginning of partitioned computer mass storage devices like fixed disks or removable drives intended for use with IBM PC-compatible systems and beyond. The concept of MB ...
of the disk image in the VHD.
Microsoft Virtual Server (also Connectix derived) has this limitation using virtual IDE drivers but 2 TiB if virtual RAID or virtual SCSI drivers are used.
Software support
Virtual Hard Disk format was initially used only by
Microsoft Virtual PC (and
Microsoft Virtual Server). Later however, Microsoft used the VHD format in
Hyper-V, the
hypervisor
A hypervisor (also known as a virtual machine monitor, VMM, or virtualizer) is a type of computer software, firmware or hardware that creates and runs virtual machines. A computer on which a hypervisor runs one or more virtual machines is called ...
-based virtualization technology of
Windows Server 2008. Microsoft also used the format in
Complete PC Backup, a
backup software component included with
Windows Vista
Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
and
Windows 7
Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on July 22, 2009, and became generally available on October 22, 2009. It is the successor to Windows Vista, released nearl ...
. In addition, Windows 7 and
Windows Server 2008 R2
Windows Server 2008 R2 is the fifth version of the Windows Server operating system produced by Microsoft and released as part of the Windows NT family of operating systems. It was released to manufacturing on July 22, 2009, and became generally ...
include support for creating, mounting, and booting from VHD files.
The Vista (or later) ''drive manager''
GUI supports a subset of the functions in the ''diskpart'' command line tool. VHDs known as ''vdisk'' in ''diskpart'' can be created, formatted, attached (mounted), detached (unmounted), merged (for differencing VHDs), and compacted (for VHDs on an NTFS host file system). Compacting is typically a two step procedure, first unused sectors in the VHD are filled with zeros, . The ''virtual machine additions'' in older
VPC versions and the ''virtual machine integration features'' in
Windows Virtual PC contain ''precompact''
ISO images for the first step in supported guest systems.
Third-party products also use VHD file format.
Oracle VirtualBox, part of
Sun xVM line of
Sun Microsystems
Sun Microsystems, Inc. (Sun for short) was an American technology company that sold computers, computer components, software, and information technology services and created the Java programming language, the Solaris operating system, ZFS, ...
supports VHD in versions 2 and later. In 2017
Red Gate Software and Windocks introduced VHD based support for SQL Server database cloning.
Offline modification
It is sometimes useful to modify a VHD file without booting an operating system.
Hyper-V features offline VHD manipulation, providing administrators with the ability to securely access files within a VHD without having to instantiate a virtual machine. This provides administrators with granular access to VHDs and the ability to perform some management tasks offline. The Windows Disk Management MMC plugin can directly mount a VHD file as a drive letter in Windows 7/Server 2008 and newer.
For situations where mounting a VHD within the operating system is undesirable, several programs enable software developers to inspect and modify VHD files, including .NET DiscUtils, WinImage, and R1soft Hyper-V VHD Explorer.
7-Zip supports extraction and inspection of VHD files.
Virtual Floppy Disk (VFD)
''Virtual Floppy Disk'' (VFD) is a related file format used by Microsoft Virtual PC, Microsoft Automated Deployment Services and Microsoft Virtual Server 2005.
A VFD that contains an image of a 720 KB low-density, 1.44 MB high-density or 1.68 MB
DMF 3.5-inch
floppy disk
A floppy disk or floppy diskette (casually referred to as a floppy, or a diskette) is an obsolescent type of disk storage composed of a thin and flexible disk of a magnetic storage medium in a square or nearly square plastic enclosure lined ...
can be mounted by Virtual PC.
Other virtual machine software such as VMWare Workstation and VMware Player can mount raw floppy images in the same way.
Windows Virtual PC for Windows 7 (version 6.1) does not offer a user interface for manipulating virtual floppy disks; however, it still supports physical and virtual floppy disks via scripting
Script may refer to:
Writing systems
* Script, a distinctive writing system, based on a repertoire of specific elements or symbols, or that repertoire
* Script (styles of handwriting)
** Script typeface, a typeface with characteristics of handw ...
. Under Hyper-V, VFD files are usable through the VM settings for Generation 1 virtual machines. Generation 2 virtual machines do not emulate a floppy controller and do not support floppy disk images.
Virtual Hard Disk (VHDX)
VHDX (Virtual Hard Disk v2) is the successor format to VHD. Where VHD has a capacity limit of 2040 GB, VHDX has a capacity limit of 64 TB. For disk images with this newer format the filename extension vhdx
is used instead of vhd
. VHDX protects against power failures and is used by Hyper-V. VHDX can be mounted like VHD.
See also
* VMDK
* qcow
* Virtual disk image
* Apple Disk Image
* VHD Set
References
{{Disk images
Disk images