Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Software Defined Storage Virtual Hard Disk (VHD)

DZone's Guide to

Software Defined Storage Virtual Hard Disk (VHD)

Applications and utilities (or basically anything that is algorithms working with data structures) are programs. Software Defined Storage or Software Defined anything involves defining data structures that describe various entities, along with the algorithms to work with and use those data structures.

· Cloud Zone
Free Resource

Deploy and scale data-rich applications in minutes and with ease. Mesosphere DC/OS includes everything you need to elastically run containerized apps and data services in production.

For those who are into, or simply like to talk about software-defined storage (SDS), APIs, Windows, Virtual Hard Disks (VHD) or VHDX, or Hyper-V among other related themes, have you ever actually looked at the specification for VHDX? If not, here is the link to the open specification that Microsoft published (this one dates back to 2012).

Microsoft VHDX specification document
Click on above image to download the VHDX specification from Microsoft.com

How about Algorithms + Data Structures = Programs by Niklaus Wirth? Some of you might remember that... if not, it’s a timeless piece of work that has many fundamental concepts for understanding software defined anything. I came across Algorithms + Data Structures = Programs back in Graduate School when I was getting my masters degree in Software Engineering at night, while working during the day in an IT environment on servers, storage, I/O networking hardware, and software.

Algorithms + Data Structures = Programs on Amazon.com
 Algorithms + Data Structures = Programs on Amazon.com

In addition to the Amazon.com link above, here is a link to a free (legitimate PDF) copy.

The reason I mention Software Defined, Virtual Hard Disk and Algorithms + Data Structures = Programs is that they are all directly related, or at a minimum can help demystify things.

Inside a VHD and VHDX

The following is an excerpt from the Microsoft VHDX specification document mentioned above that shows a logical view of how a VHDX is defined as a data structure, as well as how algorithms should use and access them.

Microsoft VHDX specification

Keep in mind that anything software defined is a collection of data structures that describe how bits, bytes, blocks, blobs, or other entities are organized and then accessed by algorithms that are defined how to use those data structures. Thus, the connection to Algorithms + Data Structures = Programs mentioned above.

In the case of a Virtual Hard Disk (VHD) or VHDX, they are the data structures defined (see the specification here) and then used by various programs (applications or algorithms) such as Windows or other operating systems, hypervisors, or utilities.

A VHDX (or VMDK, or VVOL, or qcow, or other virtual disks, for that matter) is a file whose contents are organized e.g. the data structures per a given specification (here).

The VHDX can then be moved around like another file and used for booting some operating systems, as well as simply mounting and using like any other disk or device.

This also means that you can nest putting a VHDX inside of a VHDX and so forth.

Where to Learn More

Continue reading with the following links about Virtual Hard Disks pertaining to Microsoft Windows, Hyper-V, VMware, among others.

What This All Means

Applications and utilities (or basically anything that is algorithms working with data structures) are programs. Software Defined Storage or Software Defined anything involves defining data structures that describe various entities, along with the algorithms to work with and use those data structures.

Sharpen, refresh, or expand your software defined data center, software defined network, software defined storage, or software defined storage management as well as software defined marketing game by digging a bit deeper into the bits and bytes. Who knows, you might just go from talking the talk to walking the talk, if nothing else, talking the talk better.

Ok, nuff said (for now).

Discover new technologies simplifying running containers and data services in production with this free eBook by O'Reilly. Courtesy of Mesosphere.

Topics:
storage

Published at DZone with permission of Greg Schulz, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}