Какво е виртуална машина - типове и предимства

Опитайте Нашия Инструмент За Премахване На Проблемите





Концепцията за виртуална машина е въведена около 1960 г. Това е еволюцията на техниката за споделяне на времето. При метода за споделяне на времето всяка програма има пълен достъп до всички компютърни ресурси, но наведнъж ще бъде изпълнена само една програма. Системата превключва между програми във времеви срезове, като запазва и възстановява състоянията на програмата всеки път. С използването на метода за споделяне на времето множество потребители могат да използват компютърната система едновременно. Изследователските центрове на IBM развиха метода за споделяне на времето като виртуални машини. CP-67 беше първият наличен архитектура на виртуална машина . Разработени са системи с множество виртуални машини на един хост и една виртуална машина на множество хостове.

Преди да стартирате какъвто и да е нов хардуер технология , първо се тества на емулатора за откриване, пресъздаване и отстраняване на недостатъците в дизайна и придържане към необходимите стъпки. По същия начин, преди да въведете какъвто и да е нов софтуер, той се симулира, за да провери за грешки и да ги отстрани. За да изпълни тази задача, система, която може да действа като заместител на основната среда за изграждане на нови технологии. Тук се появяват виртуалните машини. Той действа като емулация на компютърната система, осигуряваща пълната функционалност на физическата система.




Какво е виртуална машина?

С въвеждането на нови технологии и по-нови изследователски модели се лансират много на брой хардуерни и софтуерни продукти. Много от софтуера зависят от платформата, поради което понякога е трудно да ги отстраните или проверите поради ограничените хардуерни ресурси.

VM (виртуална машина) е емулация на компютърна система, при която тези машини използват компютърни архитектури, за да осигурят функционалността на физически компютър. Физическото устройство, на което работят виртуалните машини, е известно като Host, докато виртуалните машини са известни като Guest. Един домакин може да има няколко броя гости.



Видове виртуална машина

Виртуалната машина работи като компютър и е изолирана от останалата част от хост системата. Софтуерът в рамките на госта не може да прави промени в софтуера на хост системата. По този начин вирусните файлове могат да бъдат тествани с помощта на виртуална машина, без да се засяга основната компютърна система. Компютърният софтуер, който създава и стартира виртуалната машина, е известен като Hypervisor. Въз основа на техните функции има два различни вида виртуални машини - системни виртуални машини и обработващи виртуални машини.

1). Системни виртуални машини


Тези видове виртуални машини осигуряват пълна виртуализация. Действайки като заместител на реалната машина, те ще осигурят функционалности за изпълнение на цяла операционна система . Хардуерните ресурси се споделят и управляват, образувайки множество среди в хост системата. Тези среди са изолирани една от друга, но съществуват на един и същ физически хост. По този начин те осигуряват споделяне на времето между няколко еднозадачни операционни системи.

За да позволи споделяне на памет между различни виртуални машини на един компютър операционна система , могат да се приложат системи за прекомерност на паметта. Страниците с памет с идентично съдържание могат да се споделят между множество виртуални машини, присъстващи на един и същ физически хост. Това е изключително полезно за страници само за четене.

2). Обработвайте виртуални машини (VM)

Тези виртуални машини са известни също като виртуални машини за приложения, управлявани среди за изпълнение. Този тип виртуална машина се изпълнява като нормално приложение в операционната система на хоста, като поддържа един процес. Създава се с началото на процеса и се унищожава, когато процесът приключи. Използва се за осигуряване на независима от платформата програмиране среда за процеса, което му позволява да изпълнява по същия начин на която и да е от другите платформи.

Процес-виртуална машина

Процес-виртуална машина

Те се изпълняват с помощта на преводачи и осигуряват абстракции на високо ниво. Те се използват широко за програмиране на Java, което използва Java виртуална машина за изпълнение на програми. Има специален случай на виртуална машина на процеса, която абстрахира комуникационния механизъм на компютърен клъстер. Те съдържат по един процес на физическа машина в клъстера. Те помагат на програмиста да се съсредоточи върху алгоритъма, вместо върху комуникационния процес, осигурен от взаимосвързаността и виртуална машина в ОС . Приложението, работещо на тези VM, има достъп до всички услуги на операционната система. Паралелна виртуална машина, интерфейс за предаване на съобщения са примери за тези виртуални машини (VM).

Архитектура

Изпълнителният софтуер е софтуерът за виртуализация, който реализира Process VM. Той е реализиран на ниво API на компютърната архитектура над комбинирания слой на ОС и хардуер. Това емулира инструкциите на ниво потребител, както и повикванията на OS или библиотека. За системната виртуална машина софтуерът за виртуализация се нарича Virtual Machine Monitor (VMM). Този софтуер присъства между хост хардуерната машина и гост софтуера. VMM емулира хардуерната ISA, позволявайки на софтуера за гости да изпълнява различна ISA.

Предимства

Някои от предимствата на виртуалните машини са следните:

  • Виртуалните машини осигуряват софтуерна съвместимост със софтуера, работещ на него. По този начин целият софтуер, написан за виртуализирания хост, също ще работи на виртуалната машина.
  • Той осигурява изолация между различните видове операционни системи и процеси. По този начин операционната система на процесора, работеща на една виртуална машина, не може да модифицира процесите на другите виртуални машини и хост системата.
  • Те осигуряват капсулиране и софтуерът, присъстващ на виртуална машина, може да бъде модифициран и контролиран.
  • За хоста с многооперационна система те предоставят различни функции като липса на двойно зареждане, прехвърляне на файлове между виртуални машини, грешка в една операционна система не засяга другата операционна система, присъстваща на хоста, Freash OS може лесно да се добави.
  • Те осигуряват добро управление на софтуер като тези, които могат да изпълняват пълен софтуерен стек на хост машината, да изпълняват наследена ОС и т.н.
  • Тук е възможно да споделяте хардуерни ресурси с независими софтуерни стекове и да балансирате натоварването, виртуалните машини могат да бъдат прехвърлени към различните компютри.

По този начин съвременните изчислителни системи стават все по-сложни, което съдържа различни тясно взаимодействащи софтуерни и хардуерни компоненти. Тук виртуализацията действа като технология за взаимно свързване. Виртуалните машини правят несъвместими подсистеми за съвместна работа. Той също така осигурява по-гъвкаво и ефективно използване на хардуерни ресурси сред множество операционни системи. Те осигуряват оперативна съвместимост между хардуер, системен софтуер и приложения. Какви са разликите между процеса Виртуална машина и системна виртуална машина?