Чому гальмує віртуальна машина?

Ми вже не один раз говорили про те, що апаратна віртуалізація і бінарна трансляція - досить складні технології, які для своєї роботи забирають велику кількість системних ресурсів комп'ютера.

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

Погодьтеся, що при такому розкладі віртуальна машина буде гальмувати, принаймні це точно буде помітно користувачеві. За це причини розробники намагаються застосовувати певні хитрощі, щоб якось прискорити процес роботи віртуальної машини - оптимізувати його. Наприклад, розробники з компанії Parallels придумали наступне хитрощі: вони стали надавати жорсткого диска додатковий рівень буферизації запитів, що в свою чергу дозволило гостьовий ОС Windows стартувати набагато швидше.

Наприклад, розробники з компанії Parallels придумали наступне хитрощі: вони стали надавати жорсткого диска додатковий рівень буферизації запитів, що в свою чергу дозволило гостьовий ОС Windows стартувати набагато швидше

Не варто робити висновок, що віртуальна машина здатна виключно гальмувати роботу улюблених нами програм і утиліт. Може здатися неймовірним, але це факт, підтверджений не одним прикладом, деякі програми працюють у віртуальних машинах набагато швидше ніж на реальному комп'ютері. Ви можете самі переконатися в цьому, правда для цього вам буде потрібно комп'ютер з багатоядерним процесором і звичайно ж вимоглива до системних ресурсів додаток, яке з якоїсь причини не вміє правильно працювати на багатоядерному процесорі. Таких програма маса, знайти одну з них в Інтернеті і завантажити для експерименту не складе ніяких труднощів. Якщо запустити такий додаток у віртуальному середовищі, виділивши для неї не чотири процесорних ядра, а скажімо два або один, то воно в віртуальній машині буде працювати набагато швидше і стабільніше, ніж на реальному комп'ютері. Крім цього, додаткове кешування (про який ми говорили вище) в хості гостьового жорсткого диска може значно прискорити роботу гостьовий операційної системи. Варто зазначити, що такий спосіб прискорення роботи віртуальної машини називається небезпечним, так як загрожує втратою всіх даних гостьової операційної системи (а можливо і руйнуванням її файлової системи), якщо в момент роботи раптово збій в електропостачанні.

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

(1 оцінка, середнє 5 з 5)