LINUX.ORG.RU
ФорумAdmin

Гипервизоры первого типа - какая система на них «главная»?

 ,


0

3

Я заранее извиняюсь за, вероятно, очень неграмотный заголовок (да и весь вопрос). Но если бы я мог составить это корректно, спрашивать ничего бы не пришлось.

Как работают гипервизоры второго типа - я примерно понимаю. Устанавливаем гипервизор поверх ОС, а в этот гипервизор - ставим вторую ОС (guest OS). При этом первая ОС (host OS) будет «главной».

С гипервизорами первого типа я дел не имел. Хочу понять про них две вещи.

Первое: Как происходит установка такого гипервизора? Мы ведь не можем поставить его поверх ОС... тогда как? Вероятно, он должен быть _предустановлен_ в ОС (на уровне ядра?)

Второе: В случае, если в гипервизоре первого типа установлено несколько ОС, есть ли среди них «главная» (или все равны)?

Под «главной» я подразумевую ту ОС, которая позволяет управлять остальными (т.е. «неглавными»).

Очень упрощенная схема, иллюстрирующая мой второй вопрос:

[app] [app] [app]     [app] [app] [app]   - level 3

[guest os.......]     [guest os.......]   - level 2. Две ОС, хотя могло быть и больше. Какая из них будет главной?

[type 1 hypervisor....................]   - level 1

[hardware.............................]   - level 0
Deleted

Последнее исправление: myLogin2 (всего исправлений: 7)

Почитай какой-нибудь гайд по установке xen, это оно и есть. Просто сам гипервизор грузится загрузчиком до того как загрузить ядро первого гостя (Dom0)

anonymous
()

Гипервизор - это всегда реализация на уровне ядра OS. Другой вопрос, что можно создать ядро, которое не будет выполнять других функций, кроме управления железом и гипервизора. Это и будет являться Вашим гипервизором первого типа.

Это если говорить про архитектуру x86 (включая amd64). В других случаях (IBM-овские процессоры Power, например) функции гипервизора (по крайней мере, часть) может быть реализована прямо в железе. Впрочем, разница не так велика, как может показаться - это просто вопрос реализации.

В Вашей схеме OS на втором уровне будут разнозначны. На первом уровне будет своя OS, выполняющая функцию гипервизора. Ну и в некоторых случаях уровни 1 и 0 могут быть объединены.

Первое: Как происходит установка такого гипервизора?

Либо он встроен прямо в железо и управляется через аналог BIOS, либо Вы ставите на железо специализированную OS (ESXi как пример), которая и будет предоставлять функции гипервизора.

есть ли среди них «главная» (или все равны)?

Главных на 2 уровне нет, все равны.

Serge10 ★★★★★
()
Последнее исправление: Serge10 (всего исправлений: 1)

никакая. гипервизор 1го типа ставится на голое железо, вместо обычной оси

главного гостя нет. можешь поставить куда-нибудь по для управления гипервизором, но вм не станет главной, работать все равно будет поверх гипервизора

router ★★★★★
()
Ответ на: комментарий от Serge10

Спасибо, подробно. Вроде бы я даже все понял. (Но это не точно.)

Deleted
()
Ответ на: комментарий от Serge10

Небольшое уточнение.

Гипервизор - это всегда реализация на уровне ядра OS. Другой вопрос, что можно создать ядро, которое не будет выполнять других функций, кроме управления железом и гипервизора. Это и будет являться Вашим гипервизором первого типа.

Правильно ли понимаю, что а) то ядро, не выполняющее никаких функций, кроме управления железом и гипервизором, и б) «простейшая ОС» — будут синонимами?

Вопрос этот возник вот из одной статьи о KVM. Цитата:

Hypervisor is, in itself, a small operating system, which has to be able to work with the memory, network, etc.

Deleted
()
Ответ на: комментарий от Deleted

KVM это нестандартная и более органичная конструкция. Гипервизор первого уровня встроен в хостовую ОС, и тем кто не в теме может казаться гипервизором второго уровня

dyasny ★★★★★
()
Ответ на: комментарий от dyasny

Как я понимаю, та же ситуация (примерно тот же принцип работы и вероятность ошибочного мнения) - с вендовым Hyper-V.

В отношении KVM и Hyper-V гипервизор первого типа является не ядром, а частью ядра. Так?

Deleted
()
Ответ на: комментарий от Deleted

Каноническим примером может быть ESXi от VMWare. Гипервизор ставится на голое железо как обычная ОС, по сути оно и есть узко заточенная ОС как писали выше.

najar
()
Ответ на: комментарий от Deleted

Правильно ли понимаю, что а) то ядро, не выполняющее никаких функций, кроме управления железом и гипервизором, и б) «простейшая ОС» — будут синонимами?

Да, так и есть.

Serge10 ★★★★★
()

Есть очень простая терминология - dom0 (машина управляющая) и domU (машина гостевая).

Первым после начального загрузчика загружается гипервизор типа 1.

Далее этот гипервизор создаёт окружение для ядра управляющей системы - т.н. dom0, предоставляет ему условно-неограниченный доступ к железу (некоторая эмуляция всё-таки будет даже для dom0 в случае x86), подключает к этому окружению свой API для управления, и загружает ядро/загрузчик системы dom0.

Далее dom0 стартует, и начинает управлять гипервизором, меняя его параметры, создавая/разрушая окружения, давая команды на загрузку/старт гостевых ядер/загрузчиков, и т.п. Гипервизор от dom0 через специфичный для гипервизора API запрашивает например чтение данных с диска, ввод например с клавиатуры, вывод например видео, и работу с прочими эмулируемыми вещами, хотя бы потому, что доступ к реальному оборудованию в общем случае имеет только dom0 (на самом деле не совсем так, может быть проброс устройств прямо в domU, но для данного обсуждения не суть).

Все машины, которые стартуют под управлением гипервизора далее, называются domU - это гостевые машины, виртуальное окружение которых доступа к реальному железу (за исключением случаев, когда таковое проброшено гипервизором в окружение domU по команде от dom0) не имеет.

AlexAT
()
Ответ на: комментарий от najar

Гипервизор - не называют главной машиной

Вы о чём, вообще? Какие ещё «хостовые» и «гостевые». dom0 всегда одна, domU («гостей») - сколько угодно.

AlexAT
()
Ответ на: комментарий от najar

И да, dom0 в VMWare ESXi есть, просто он не Linux kernel-based. Хотя эмуляция ядерного API там сделана. Загляните в исходники. Над ней вертятся некоторые драйверы, шел и все управляющие приблуды.

AlexAT
()
Ответ на: комментарий от najar

Этим тулчейном вполне реально набилдить софта под ESXI'шный dom0, и даже часть драйверов от линухового ядра можно туда скомпилить (делал ребилд cciss и hpsa для 5.x в своё время, для поддержки HP P400, там с ним накривили). Но есть нюанс: эмулируемое ядерное API там весьма куцое, и поэтому втащить туда вот абсолютно любой драйвер без модификаций - увы... С софтом полегче.

AlexAT
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.