Hyper-V

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Hyper-V
Компонент Microsoft Windows
Screenshot Hyper-V.png
Диспетчер Hyper-V в Windows 10
Деталі
Тип Гіпервізор
У комплекті з
Замінює Windows Virtual PC
Пов'язані компоненти
App-V, Віддалений робочий стіл

Hyper-V, кодова назва Viridian[1] (також відомий як Windows Server Virtualization) — це вбудований гіпервізор, який здатен створювати віртуальні машини в системах під керуванням ОС Windows. Hyper-V прийшов на заміну Windows Virtual PC починаючи з Windows 8. Серверний комп'ютер на якому запущено Hyper-V може бути налаштований як декілька віртуальних серверів, на кожному з яких буде функціонувати своя операційна система і різні додатки.

Hyper-V вперше з'явився в Windows Server 2008 в 64-бітній версії. Автономний сервер Microsoft Hyper-V Server є безкоштовним, однак постачається без GUI, керування відбувається з командного рядка.

Історія[ред. | ред. код]

Бета-версія Hyper-V була включена в деякі версії Windows Server 2008 x64. Фінальна версія була випущена 26 червня 2008 року та розповсюджувалась через Windows Update. З тих пір Hyper-V випускають з кожною версією Windows Server.

Hyper-V поширюється в двох варіантах:

  1. Компонент Windows: Hyper-V є опціональним компонентом Windows Server 2008 і пізніших версій. Він також доступний у форматі x64-розрядного SKU для випусків Pro та Enterprise ОС Windows 8, Windows 8.1 і Windows 10.
  2. Hyper-V Server: Це freeware-версія Windows Server з обмеженою функціональністю та компонентом Hyper-V.

Hyper-V Server[ред. | ред. код]

1 жовтня 2008 року на конференції «Technologies to Change Your Business» (укр. Технології для зміни вашого бізнесу) в Лондоні генеральний директор Microsoft Стів Балмер оголосив про реліз Hyper-V Server 2008. Він включав Windows Server 2008 Server Core і Hyper-V ролі; інші ролі Windows Server 2008 відключені, а служби Windows обмежені. Налаштування ОС, фізичного обладнання та програмного забезпечення виконуються через інтерфейс командного рядка. Підтримується віддалений доступ через підключення до віддаленого робочого стола. Адміністрування та конфігурація ОС і гостьових віртуальних машин, як правило, виконуються через мережу, використовуючи або Консоль керування Microsoft на іншому комп'ютері з Windows, або System Center Virtual Machine Manager. Це дозволяє набагато простіше налаштовувати, а також контролювати Hyper-V Server.

Архітектура[ред. | ред. код]

Hyper-V реалізує ізоляцію віртуальних машин з точки зору розділу. Розділ є логічною одиницею ізоляції, що підтримується гіпервізором, в якому виконується кожна гостьова операційна система. Гіпервізор обов'язково має принаймні один батьківський розділ, який запускає підтримувану версію Windows Server (2008 та пізнішої версії) або Windows 8 (та пізніші). Програмне забезпечення віртуалізації працює у батьківському розділі та має прямий доступ до апаратних пристроїв. Батьківський розділ створює дочірні розділи, на яких розміщуються гостьові ОС. Батьківський розділ створює дочірні розділи за допомогою Hypercall API, який є інтерфейсом прикладного програмування, що надається Hyper-V. Hypercall API надає методи за допомогою яких батьківські розділи обмінюються даними з дочірніми.

Дочірній розділ не має доступу до фізичного процесора, а також не обробляє його реальні переривання. Замість цього він має віртуальне представлення процесора і виконується в Гостьовій віртуальній адресі (англ. Guest Virtual Address), який, в залежності від конфігурації гіпервізора, може бути не обов'язково неперервним віртуальним адресним простором. Гіпервізор обробляє переривання процесора і перенаправляє їх до відповідного розділу за допомогою логічного Контролера синтетичних переривань (англ. Synthetic Interrupt Controller або SynIC). Апаратне забезпечення Hyper-V може прискорити трансляцію адрес гостьових віртуальних адресних просторів за допомогою Second Level Address Translation (SLAT), наданого процесором, який називається EPT в Intel та RVI (раніше NPT) в AMD. З приходом Windows Server 2016 для використання ролі Hyper-V підтримка процесором SLAT є обов'язковою (раніше це була лише рекомендація).

Дочірні розділи не мають прямого доступу до апаратних ресурсів, вони мають віртуальний вигляд ресурсів з точки зору віртуальних пристроїв. Будь-який запит на віртуальні пристрої переадресовується через VMBus, який керує запитами, на пристрої батьківського розділу. VMBus є логічним каналом, який забезпечує взаємодію між розділами. Відповідь також перенаправляється через VMBus. Якщо пристрої у батьківському розділі також є віртуальними пристроями, вони будуть перенаправлені далі, поки не досягнуть батьківського розділу, де буде отримано доступ до фізичних пристроїв. Батьківські розділи запускають Virtualization Service Provider (VSP), який підключається до VMBus і обробляє запити доступу до пристроїв з дочірніх розділів. Віртуальні пристрої дочірнього розділу запускають Virtualization Service Client (VSC), який перенаправляє запит до VSP у батьківському розділі через VMBus. Весь цей процес є прозорим для гостьової ОС.

Віртуальні пристрої також підтримують технологію Windows Server Virtualization, що називається прогресивне введення-виведення (англ. Enlightened I/O), для накопичувачів, мережевих та графічних підсистем, зокрема. Enlightened I/O — це спеціалізована реалізація протоколів зв'язку високого рівня для віртуалізації, подібна SCSI, що дозволяє обходити будь-який шар емуляції пристроїв і працювати з VMBus безпосередньо. Це робить комунікацію більш ефективною, але вимагає, щоб гостьова ОС підтримувала Enlightened I/O.

Наразі Enlightened I/O підтримують такі операційні системи, що дозволяє їм працювати швидше як гостьові операційні системи під Hyper-V, в порівнянні з іншими ОС, яким потрібна більш повільна емуляція апаратного забезпечення:

Системні вимоги[ред. | ред. код]

Роль Hyper-V доступна лише у варіантах x64 Standard, Enterprise, Datacenter і Essentials випусків Windows Server 2008 і пізніших версій, а також випуски Windows 8 і пізніші версій Pro, Enterprise і Education. На Windows Server він може бути встановлений незалежно від того, чи є установка повною або базовою. Крім того, Hyper-V може бути доступним як частина операційної системи Hyper-V Server, яка є безкоштовним випуском Windows Server. У будь-якому випадку, хост-комп'ютер повинен відповідати наступним вимогам:

Обсяг пам'яті, призначений для віртуальних машин, залежить від операційної системи:

  • Windows Server 2008 Standard підтримує до 31 ГБ пам'яті для запущеної VMs, плюс 1 ГБ для батьківської ОС.[6]

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Microsoft to ship Windows Server 2008, over time, in eight flavors. Процитовано 2007-11-13. (англ.)
  2. а б Craig, Thomas (2015). Optimizing Citrix® XenDesktop® for High Performance (Англ.). Packt Publishing Ltd. с. 42–43. ISBN 9781785288760. Процитовано 2019-02-09. 
  3. Staging: hv: storvsc: Move the storage driver out of the staging area. Процитовано 28 Грудня 2015. (англ.)
  4. FreeBSD and Microsoft Windows Server Hyper-V support. Процитовано 10 Лютого 2015. (англ.)
  5. Thurott, Paul. Q: Will Windows Server 2012 require the processor to support SLAT?. Процитовано 9 Лютого 2019. (англ.)
  6. Memory Limits for Windows Releases. docs.microsoft.com. Процитовано 2019-02-09. 

Посилання[ред. | ред. код]