Over a million developers have joined DZone.

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

Build fast, scale big with MongoDB Atlas, a hosted service for the leading NoSQL database on AWS. Try it now! Brought to you in partnership with MongoDB.

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).

Now it's easier than ever to get started with MongoDB, the database that allows startups and enterprises alike to rapidly build planet-scale apps. Introducing MongoDB Atlas, the official hosted service for the database on AWS. Try it now! Brought to you in partnership with MongoDB.

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 best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

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

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

{{ parent.tldr }}

{{ parent.urlSource.name }}