<
  • Главная
Статьи

Як працюють віртуальні машини - принцип роботи

Як ми і обіцяли, сьогодні ми продовжимо розмову на цікаву тему віртуалізації. Віртуалізація - це одна з найбільш складних і корисних технологій. Давайте розберемося в тому, як працюють віртуальні машини, і дізнаємося принцип роботи віртуальних машин.

Віртуальна машина, яка використовується користувачем, за своєю суттю створює спеціальну (особливу) оточення для операційної системи і програмного забезпечення, що запускається в ній. Це особливе оточення практично нічим не відрізняється від справжнісінького комп'ютера. Як і комп'ютер, віртуальне оточення складається з віртуального жорсткого диска, процесора, відеокарти, контролерів пристроїв, оперативної пам'яті і тп. При цьому віртуальна машина може одночасно з ПК взаємодіяти з реальними пристроями, наприклад, такими як DVD-привід, USB-флешка, веб-камера ...

Операційна система, в якій включається віртуальна машина (оточення) прийнято називати - основний або "хостом"; а система, встановлена ​​на віртуальній машині іменується як гостьова ОС.

Віртуальні компоненти (процесор, оперативна пам'ять і інші пристроїв), при створенні оточення, створює так званий монітор віртуальної машини (Virtual Machine Monitor - VMM), також даний монітор ще називають гіпервізором. Гипервизор є ключовим компонентом для всіх віртуальних середовищ, за допомогою яких виконується ізоляція основної операційної системи (хоста) від гостьової. Крім того, саме гипервизор відповідає за отримання та розподіл ресурсів комп'ютера між запущеними системами. Якщо говорити інакше, то саме від роботи Virtual Machine Monitor повністю залежить правильна і стабільна робота гостьовий ОС. При всьому при цьому, гостьова операційна система в більшості випадків взагалі не підозрює про існування гипервизора, і думає, що вона працює на звичайному залозі. Власне кажучи, цей "обман" виявляєте основою технології віртуалізації (мається на увазі її домашнє використання).

Бувають такі ситуації, коли система повідомляє віртуальній машині про нереальність її оточення і дає можливість гостьовий ОС безпосередньо взаємодіяти з VMM (гіпервізором), в такому випадку вже не варто називати її виртуализацией - це вже інша технологія, яка називається паравіртуалізаціей. Для використання даної технології потрібне внесення деяких змін в ядро ​​операційної системи. Саме з цієї причини не паравіртуалізація застосовується виключно в ОС з відкритим вихідним кодом, до яких як нам всім давно відомо не належать системи від Microsoft і Apple.

Оскільки технологія віртуалізації відноситься до досить складним, одним із головних завдань розробників, що створюють рішення для віртуалізації є контроль виконання коду гостьової операційної системи. Сучасні ОС влаштовані так, що не можуть існувати без проблем в рамках одного комп'ютера, і якщо спробувати виконувати їх код в такому вигляді як він є, то такий експеримент не призведе ні до чого хорошого. Замість звичної і комфортного робочого середовища, користувач отримає постійно зависала, постійно перезавантажувати робоче середовище, або таке робоче середовище, в якій буде тільки "синій екран змети" і більше нічого. Щоб користувачеві не стикатися з усіма перерахованими вище проблемами, вирішення для віртуалізації не дозволяють гостьовий ОС отримати прямий доступ до управління апаратними ресурсами комп'ютера і отримання даних про реальний стан системи. Іншими словами, все будується на обмані, гостьовий ОС підсовують ті значення регістрів стану процесора, пам'яті і інших компонентів, які вона повинна бачити, щоб працювати стабільно і правильно.

Є два способи, за допомогою яких обманюють гостьову ОС: бінарна трансляція і підтримка апаратної віртуалізації. Рідко, але все ж, до цих способів ще зараховують і паравіртуалізацію, але як ми вже писали вище, технологія паравертуалізаціі має на увазі під собою, що гостьова ОС знає про існування гипервизора і вміє з ним взаємодіяти. З цієї причини паравертуалізація дуже слабо відноситься до віртуальних машин і про неї говорити ми не будемо.

Сподіваємося хоча б в загальних рисах, але нашим читачам стало зрозуміло, як працюють віртуальні машини і на якому принципі ґрунтується їхня робота.

(Поки оцінок немає)



Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью