What are virtual machines?

Published Mar 11, 2009, 4:00 PM

Virtual machines can function as a 'machine inside a machine,' preventing two mutually incompatible applications from sabotaging each other. Tune in as the TechStuff crew takes a look at virtual machines in this podcast from HowStuffWorks.com.

Learn more about your ad-choices at https://www.iheartpodcastnetwork.com

Brought to you by the reinvented two thousand twelve camera. It's ready. Are you get in touch with technology? With tech Stuff from how stuff works dot com. Hello, everybody, welcome to tech stuff. My name is Chris Palette. I'm an editor here at how Stuff Works. Sitting next to me as usual as senior writer Jonathan Strickland. Hey there, and today we're going to talk about virtual machines. Yeah, and this is a topic that, uh, that a lot of people were kind of curious about. We've got a couple of emails about virtual machines and exactly what are they and why use them? Um? And it is kind of confusing. You think of the word virtual, it means it's it's not a physical thing. It just kind of virtually exists. So how is that even possible? Well, it all has to do with special software, which is fittingly called virtualization software. Yeah, I'm guessing that this giant cardboard box that I have painted how home and says that it's a supercomputer, that's not that doesn't count as a virtual machine in the classical sense. In the three year old let's play pretend sense you you are aces. It was cranking out billions of virtual pedophlops. I'm sure it was, but for real quote unquote virtual machines. We're talking about special software that essentially partitions of physical machines resources in such a way that you can run multiple instances of operating systems if you like, or applications that are completely independent of one another. There's no there's no real risk of them interfering with each other. And um, so you're using one physical machine to run multiple instances of some sort of application. Uh, that's that's the basic premise. Um, why is this important? Well, it's because as the Web has evolved, things have gotten really complicated. A lot of websites run multi both services, and sometimes these services need to use multiple applications. Um, well, it turns out that some applications don't work well with others, and if you try and run multiple applications on one server, you get crashes. Right yeah, I mean so you don't want that to happen. Yeah. You also might know this. In another word, you may not have known what it was environment. Um, just imagine it as a little you know, pretend world on a on your web browser might be Java for instance, Right, Yeah, that's a good example. Java is as a program pro proglamming language. It could be it's very proglam um David, Yeah, exactly. UM. That was created by son uh and uh. Basically, you when you have Java installed on your computer and you go to a, um a website that has Java plug in on. It might be, for example, a gaming site. You want to play a casual game on your your machine, and you go to that thing. You know, all of a sudden, you see this thing and it's loading inside your window has a little box and it's you know, it gives you You might see, especially with Java, the orange Java window and it just you know, scrolls open and then all of a sudden, whatever it is that you're trying to do pops up. Well, that's Java running on a virtual machine inside your browser window whatever. You know, whether you're using Windows or Linux or or Mac. There it is. You know, it's it's a machine inside a machine. Yeah. And you might wonder, well, why would you even worry about having a machine inside a machine in the first place. Well, ideally you would have a single server for every single application that you want to run in your service. UM. That way you can make sure that one, no, two applications are going to interfere with one another. You don't have to worry about a server running two of them at the same time. Um too, if there's a problem, you can actually find out where the problem is very quickly because if it's a specific application going down, you know which server that belongs to, Like, well, this this is the server that runs process A. If Process A is going haywire, you know to go to that particular server. But here's the problem is that if you've got tons and tons and tons of applications, or you have a really large operation like let's say I don't know Google, that's a good example. Google has thousands of these servers. Well, if you do a single server per application in an environment like Google, then you would need even more space, tons and tons of space and resources physical resources like not just the storage facility, but you know, your power consumption and uh and cooling systems, things that you need to have in order to make servers run properly. Uh. But if you were to, you know, look at most of these servers running applications, you would notice that the servers have become really really power a full, and most of them are not running anywhere near capacity like a single application takes up only a fraction of the servers uh processing power, so you're not really using your physical machines to the extent that you need to. The solution is virtualization. If you can create a virtual partition within that machine so that it can run two different operating systems, or even two of the same operating system It doesn't have to be different, um, but if it can run two of these environments at the same time, you you are maximizing that servers resource use. So that way you don't have to worry about, Okay, well this servers only running at twelve percent capacity. The other great thing about it is that, well that means that suddenly you don't need all this space anymore. You can run that that operation with let's say a thousand servers instead of five thousand servers. Now we are talking about huge numbers here, but the same thing applies on smaller scales. So operations that would only need five or six servers may only need two or three. Now there that's the that's the broad view of this. But there are some caveats to this. Yeah, for instance, you shouldn't max out your server. No, that's never a good thing. You're gonna overtax it and it's going to make it work even less reliably. Right yeah so you so, while it's possible to maybe create multiple virtual servers or virtual machines even on a PC, this is not just for servers. You can do it with PCs two. Um, even though you could do multiple ones, you have to remember every single time you do this, you're partitioning off part of that computer's resources. So the computer as a whole has less you know, each each individual instance has has only a fraction of the main computers resources. Eventually get to a point where you know you have the diminishing law of returns. You know you're not or law of diminishing returns, I should say, you don't. Uh, you don't get enough output to justified partitioning up the server anymore than you already have. Right and um, you know that that also applies to desktop computers as well. I mean you can you can set up your your desktop computer to uh well, depending on what model you have, UM to run more than one operating system or multiple instances of an operating system. UM. You know, Mac users, especially the Intel Mac users, are very familiar with this now, or at least a lot of them are because um, the Intel Max can run different operating systems, and just the mac os that can also run Windows and they can run Linux. UM, if you are so inclined, you can uh install all three operating systems. Of course, you have to partition to hard drive. Was you know what Jonathan was saying before. You have to make a separate section for each of those. And if you're running software like UM against Son's Virtual Box or vm Ware's Fusion or Parallels desktop, you can actually access those other operating systems at the same time in a virtual environment right there on the desktop, and you can you can use them at the same time. Now, of course they're all using again Jonathan said, the same processor at the same time, and after a while it's going to overtax things. But um, it is possible to do and you can do this on a on a regular Windows box to m vm Ware also makes a workstation which I believe allows you to run different environments at the same time as well. Sure, and there are even businesses that have made an entire business model out of this. There's one called in Computing in as a name. UM. I went to the Consumer Electronics Show this last year two thousand nine, and I met with the president of in Computing and it was a fascinating tour of the booth. It was one of those very small booths all the way, something I probably never would have seen. But I received an email and I thought, this sounds really interesting. I'm going to take some time and go to this, and I'm really glad I did. Now in Computing what they've done is they've found a system where you can partition up a regular PC so that you can create multiple workstations that all share that one PCs resources. It's just like the old time sharing model on supercomputers. You have to sit there and listen to a long winded sales pitch and you know, maybe you'll get a free car. I didn't, but then I'm pressed, so um no, no, it was. It was really a great UH booth tour. But time sharing, for those of you who are wondering, that was a system where you had a supercomputer. It was a centralized computer, and then you had a bunch of dumb terminals, which means the terminals didn't have any real native processing power. It was just an access point for the user to get access to the processing power that was in the supercomputer, so you could have multiple people working on this at the same time. Now with the supercomputer was a little different. It wasn't all partitioned. It was that the computer would handle each task separately in time in sequence. So let's say Johnny says I need this information, and then he says I need this information, while the supercomputer would answer Johnny's first and then Susie's. But it was so fast that it seemed like it was instantaneous, like it was all simultaneously happening at you know, So it seemed like the same sort of thing. Now, what in computing does is it? It partitions up PCs um and depending on which series you have, Like if you have the X series, I think it's the five fifty, I think up to eleven users can be using the same PC at the same time. Now each person has their own monitor, keyboard, mouse, that kind of thing. But they attached to a little module which in turn attaches to the mother PC. And then if you were to get them the L series, did I say that? Ll serious? That was the X series. The L series is up to thirty users on one PC and it runs through Ethernet chords. You you connect Ethernet cable to the little module which you know, your monitor and your keyboard plug into, connect that to the host PC. So in computing's ideas, well, this is a good way to uh to bring computers into schools in like developing nations where they can't necessarily afford a computer for every student, but they can afford one decent computer and then this system which will allow up to thirty people to access that computer's resources. Um. Now, of course it can only run applications that aren't going to over tax that computer. You're not gonna see a lot of call of duty being played on these terminals. But word processors, spreadsheets, that's gonna that's easy. So it's it sounds like between you know, virtualization and cloud computing that we're we're we may be headed into a world where um, there is centralized processing power and centralized applications and people are just using uh, dumber and dumber terminals and you know, things like netbooks that have slower processors and less RAM and basically trusting the the cloud to handle all the application than all the heavy lifting. Yeah, do you do you really think that that's the way it's all going to go? Or I mean, is this just sort of an application per application used like the the Third World education? Momow, what a great question. It really turned it around on either pullet. But no, I have an answer for this. Okay, this is one of my favorite topics to talk about, so of course I have an answer for this. Um. Now, of course, this this is my own personal opinion about about how things are going. I think the economic downturn was the best thing that could happen to netbooks because it meant that consumers were looking at computers and they were saying, well, you know, I still need to get a computer for my my son or my daughter who's going off to college, or I really need a new computer, but I can't afford to buy the latest and greatest. And yeah, that new I seven processor looks amazing, but I just can't afford that kind of computer, or or that new Mac that's thirty three hundred dollars. Did you see that that came out today and with it yeah z on um, Yeah, the Mac Pro. Not everyone can spend that much, so they're looking at other options. Now. I think if the consumer realizes that the netbooks do not have this native processing ability and that they will really need to rely upon the cloud to get that kind of processing done. If they realize that and they're okay with that, Yeah, I think this is the future. I think that mass market in general will move to netbooks and what we would traditionally call underpowered PCs. UM, you will still have niche markets that will not move to that. UM. For instance, anyone who's doing massive media editing, they can't do that. You can't really poured everything off to the cloud. UM. Same thing with gamers. I mean, gamers are gonna need to have that super fast processor and that the huge hard drive and all of the bells and whistles. So that's still going to be there. UM. The question is if those markets are large enough to keep that development process going at full speed. That question, I don't know the answer to that. We're gonna have to see. I'm actually kind of worried about that because it may mean that we that War's Law suddenly doesn't apply because the the incentive to always be developing at the fastest space possible is gonna possibly go away, right right, But you know it'll all be virtual at that point, so yeah, so who will you know? And there's there's actually a good point there. I mean, you're kind of smirking at me and making a joke, but that's that's a good No, It really is a good point because when you think about it, these servers that are running all the processes, they still have to be fast. So there's still a market for fast processors. It's just that that market may switch to the business end, not to the consumer end. You know, it's possible too that that may

In 1 playlist(s)

  1. TechStuff

    2,482 clip(s)

TechStuff

TechStuff is getting a system update. Everything you love about TechStuff now twice the bandwidth wi 
Social links
Follow podcast
Recent clips
Browse 2,479 clip(s)