Monday, June 25, 2012

Architecture Faithfulness and Fidelity

Many of you have heard me comment on this already, but I believe it's worth repeating, even more so as I look back over the decades. My colleague Brian Wade used the phrase z/VM's role is to "faithfully replicate the architecture". John Thomas of the the IBM competitive project office, referred to this as fidelity. This has been a core design principle of z/VM that it obeys the z/Architecture Principle of Operations as if it were a real machine. Many of the test suites that are run against the real hardware, or logical partitions, are also run in a z/VM virtual machine; and they need to run successfully for a new release to pass.

You might ask why is the architecture faithfulness or fidelity important? There are several key reasons. First, it's been helpful over the years to have this design principle or goal. Otherwise, you would see more drifting in purpose and reliability. This also means that since System z architecture evolves with a high degree of forward compatibility, z/VM also has a high degree of compatibility. While some would disagree, I claim that's an important value. How many of us have programs we wrote in the 1970s or 1980s that still run successful today on z/VM? We'll talk more about compatibility in another post.

While we have extensions to the architecture in z/VM, significant effort is placed to not compromising the architecture for the sake of those extensions. 

There is also value in accurately representing the architecture from a trust and confidence perspective. Various software groups or vendors are comfortable that the virtualization layer that z/VM adds will not influence the behavior of their software in unforeseen ways. They still recognize the value of testing, but they don't feel the warranty risk or problem determination expensive will be out of proportion to the value gained. I believe this is one of the reasons various software is certified to run with the virtualization of z/VM, but not all the other virtualization solutions.

Have you ever met someone who didn't seem to stand for anything, or have any core principles? I have; and I've always had trouble trusting people like that. I like to think of z/VM as being trustworthy. Faithfulness to the architecture is one of its core principles that has served it over the decades, and hopefully will continue to be a way-point through the next decade's journey.

No comments:

Post a Comment