This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision | |||
|
dido:public:ra:1.4_req:1_func:platform:virtnodes [2021/08/13 11:58] murphy |
dido:public:ra:1.4_req:1_func:platform:virtnodes [2021/08/13 13:17] (current) murphy [Virtual Machines] |
||
|---|---|---|---|
| Line 21: | Line 21: | ||
| [[dido:public:ra:1.4_req:1_func:platform:virtnodes| Return to Top]] | [[dido:public:ra:1.4_req:1_func:platform:virtnodes| Return to Top]] | ||
| - | A [[dido:public:ra:xapend:xapend.a_glossary:v:vm]] is a software program that behaves as if it were a complete computer. Often VMs are software versions of an existing [[dido:public:ra:1.4_req:1_func:platform:hw_arch | Hardware Platform]]. For example, the Hardware Server running an [[dido:public:ra:xapend:xapend.a_glossary:r:risc]] processor, might host a VM that behave as if it were an x86, 68000, CISC, RISC, ARM, etc. The VM will have a virtual processor that executes the appropriate instruction set such as [[dido:public:ra:xapend:xapend.a_glossary:c:cisc]]. Generally, the [[dido:public:ra:xapend:xapend.a_glossary:h:hypervisor]] also known as a Virtual Machine Monitor (VMM) creates, runs and monitors the execution of the VMs. Each VM is isolated from each other and from the host machine which is a good for security reasons. For example, the memory (also virtual) is allocated for only for one VM. If another VM needs to use the same physical memory, the memory is "zeroed" before it can be reused. | + | A [[dido:public:ra:xapend:xapend.a_glossary:v:vm]] is a software program that behaves as if it were a complete computer. Often VMs are software versions of an existing [[dido:public:ra:1.4_req:1_func:platform:hw_arch | Hardware Platform]]. For example, the Hardware Server running an [[dido:public:ra:xapend:xapend.a_glossary:r:risc]] [[dido:public:ra:xapend:xapend.a_glossary:p:processor|processor]], might host a VM that behave as if it were an x86, 68000, CISC, RISC, ARM, etc. The VM will have a virtual processor that executes the appropriate instruction set such as [[dido:public:ra:xapend:xapend.a_glossary:c:cisc]]. Generally, the [[dido:public:ra:xapend:xapend.a_glossary:h:hypervisor]] also known as a Virtual Machine Monitor (VMM) creates, runs and monitors the execution of the VMs. Each VM is isolated from each other and from the host machine which is a good for security reasons. For example, the memory (also virtual) is allocated for only for one VM. If another VM needs to use the same physical memory, the memory is "zeroed" before it can be reused. |
| As a general rule, Hypervisor's are heavy when compared to [[[[dido:public:ra:xapend:xapend.a_glossary:c:containerengine | Container Engines]] and Virtual Machines are heavier than Containers. The "heaviness" is in reference to the resources required. For example, a Hypervisor takes more memory and [[dido:public:ra:xapend:xapend.a_glossary:c:cpu]] than a Container Engine because of the amount of work that is required to create and manage the VMs. This means that the smaller the host machine, the more likely that Containers are a better solution. Another reason that VMs are heavier is that each VM has its own copy of a a Guest Operating system while Containers are designed to share key parts of the host operating system. | As a general rule, Hypervisor's are heavy when compared to [[[[dido:public:ra:xapend:xapend.a_glossary:c:containerengine | Container Engines]] and Virtual Machines are heavier than Containers. The "heaviness" is in reference to the resources required. For example, a Hypervisor takes more memory and [[dido:public:ra:xapend:xapend.a_glossary:c:cpu]] than a Container Engine because of the amount of work that is required to create and manage the VMs. This means that the smaller the host machine, the more likely that Containers are a better solution. Another reason that VMs are heavier is that each VM has its own copy of a a Guest Operating system while Containers are designed to share key parts of the host operating system. | ||