Віртуальная машына (ВМ, ад англ.: virtual machine) —
Віртуальная машына выконвае нейкі машынна-незалежны код (напрыклад, байт-код, шыты код, p-код) або машынны код рэальнага працэсара. Апроч працэсара, ВМ можа эмуляваць работу як асобных кампанентаў апаратнага забеспячэння, так і рэальнага камп’ютара цалкам (уключаючы BIOS, аператыўную памяць, цвёрды дыск і іншыя перыферыйныя прылады). У апошнім выпадку ў ВМ, як і на рэальны камп’ютар, можна ўсталяваць аперацыйныя сістэмы (напрыклад, Windows можна запускаць у віртуальнай машыне пад Linux ці наадварот). На адным камп’ютары можа функцыянаваць некалькі віртуальных машын (гэта можа выкарыстоўвацца для імітацыі некалькіх сервераў на адным рэальным серверы з мэтай аптымізацыі ўжывання рэсурсаў сервера).
Канцэпцыя віртуальнай машыны як сукупнасці рэсурсаў, якія эмулююць паводзіны рэальнай машыны, з’явілася ў Кембрыджы ў канцы 1960-х гадоў як пашырэнне канцэпцыі віртуальнай памяці манчэстэрскай вылічальнай машыны Atlas .[1] У цэлым вылічальны працэс вызначаецца, у межах гэтай канцэпцыі, зместам той рабочай прасторы памяці, да якой ён мае доступ. Пры ўмове, што пэўная сітуацыя ў гэтай рабочай прасторы адпавядае чаканай, працэс не мае аніякіх сродкаў для вызначэння таго, ці з’яўляецца прадстаўлены рэсурс сапраўды фізічным рэсурсам гэтага тыпу, або ён імітаваны дзеяннямі іншых рэсурсаў, якія прыводзяць да аналагічных змен змесціва рабочай прасторы працэсу.
Напрыклад, працэс не можа вызначыць, ці манапольна ён ужывае працэсар або ў рэжыме мультыпраграмавання разам з іншымі працэсамі. У віртуальнай машыне аніводны працэс не можа манапольна ўжываць адвольны рэсурс, і ўсе сістэмныя рэсурсы лічацца рэсурсамі патэнцыйна сумеснага выкарыстання. Акрамя таго, ужыванне віртуальных машын забяспечвае раздзяленне паміж некалькімі карыстальнікамі, якія працуюць у адной вылічальнай сістэме, забяспечваючы пэўны ўзровень абароны даных.
Ідэя віртуальнай машыны палягае ў падмурку цэлага шэрагу аперацыйных сістэм, у прыватнасці, IBM VM/CMS (і яе савецкага клону СВМ) і DEC VAX/VMS.
Віртуальныя машыны могуць выкарыстоўвацца для наступных мэт:
Некаторыя вядомыя віртуальныя машыны:
|
|
|