When virtual computing first got it's start, I've already mentioned in different places in the course that VMware was the pioneer who created that and when we look at it now, we grab an application like VMware or VirtualBox or Parallels and virtual machines just look easy to us. Right. You create a machine after you've installed the virtual software, you just create you a machine, you install a little software, what's the problem? Everything works, you know, just a cool idea, just take a machine, put it in a window, boom, there you have it right? Well like everything else in life, if it looks easy it's probably because somebody's worked very, very hard to make it look that way. Let's talk about the X86 architecture. The X86 architecture was built on a design structure and a machine instruction set on the CPU that was most definitely not designed for virtualization. The processors weren't ready for it, they didn't like it when it came and as it turned out when VMware first started to solve this problem, they quickly realized that there are 17 specific machine level instructions that create serious problems when you try to virtualize a machine. Because these calls would go down to the CPU and the system would crash, it would lock up, the virtual machine would go away, it would crash, it would lock up, just all kinds of serious problems would happen. VMware came up against this roadblock here with these 17 specific instructions for the CPU but they had a problem. It was 1999, I mean you know, the Internet was already out and going, we were pretty mature in the use and functionality of the X86 architecture and there is only, you know, I don't know how many billion machines were already out there certainly in the millions. So you couldn't just go back and start to change the CPU very easily, especially for a new product like this, that would have been a really hard sell. So VMware just simply did a little brain work here and they came up with the architecture solution and that was, don't worry about the CPU, they developed a technique, a software solution that basically traps the 17 problematic CPU instructions. So when it sees those get called, it basically traps those and then it converts them into safe virtualized instructions based on what's calling them, how they're being called, what we're trying to do and all that sort of stuff. And so each of those 17 problems were basically redirected or morphed into something that the CPU could understand and do in a safe way. Now any other CPU instruction that comes through, that's safe, gets executed without any intervention. Now once they did that, then they got a lot more efficient with the virtual machine performing much, much faster, much more like the original stand alone machine would. But you still had these 17 problematic instructions that had to be trapped and then you know, mapped to the correct thing and that obviously was taking a little bit of time. So what happened in the meantime, just like everything else, once you get a little success, you know, everybody jumps on board then. Well as it is turned out, Intel and AMD have now added over the years, new CPU features to make virtualization faster and easier and you don't have to do as much of this translation of these problematic instructions. In other words, the CPU is more receptive to the idea of virtualization and the command structure on the CPU is built to support virtualization. Now this also goes back to some things I talked about in some earlier ideas in the course here in some movies, where we talked about how the, the IBM CPU's were built for this functionality and also the fact that your own machine has to have like VTX Support on the Intel side and so forth. And that's exactly what we're talking about here, Intel adding this new support for this on the CPU has made virtualization possible. So anyway the 17 problems were kind of fascinating really with what had to happen to make this reality, is this going to be something you have to know to be able to use VMware Workstation or any other virtual environment? Absolutely not but it's kind of things that, it's just interesting to see and hear about and you will appreciate it the next time you load up a virtual machine. It wasn't just as simple as, well let's just install this into a window and we've got it licked. Okay. So anyway, that's the 17 problems.
| Course: | VMware Workstation 8 |
| Author: | Mark Long |
| SKU: | 34309 |
| ISBN: | 978-1-61866-043-5 |
| Release Date: | 2012-05-04 |
| Duration: | 8 hrs / 99 lessons |
| Work Files: |
Yes |
| Captions: | No |
| Compatibility: |
Vista/XP/2000, OS X, Linux QuickTime 7, Flash 8 |