LINUX.ORG.RU
ФорумTalks

Переключалка ОСей

 ,


1

1

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

Т.е. какой-нить гипервизор, который спит, пока мы не скажем ему переключить ОС, после чего он забирает управление, усыпляет текущую ОС, и будит другую. ОС работают без виртуализации, с полным контролем над оборудованием, для них переключение просто как состояние сна, без параллельного выполнения и каких-либо абстракций к оборудованию. Также, было бы круто поделить память между ОСями, чтобы не гонять на диск (по 8гиг дал пингвину и маку/винде - и порядок). Переключение должно быть без полной перезагрузки и достаточно быстрым, типа как tty в линуксе переключить.
Основная проблема конечно - переинициализация устройств - все будет очень негладко. Можно попробовать проходить полную процедуру усыпление/пробуждение, но с виндой и так может не прокатить, думаю.
Видел ли кто такое в природе?

★★★★★

Последнее исправление: dib2 (всего исправлений: 1)
Ответ на: комментарий от tiinn

дуалбут за пару секунд?

dib2 ★★★★★
() автор топика

ОС работают без виртуализации

Именно виртуализация даст тебе то, что ты хочешь.

King_Carlo ★★★★★
()

это и есть виртуализация, суть виртуализации. Просто оно пока еще маленькое, не наросло исчо.

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

без виртуализации

какой-нить гипервизор

Так всё таки гипервизор или без виртуализации? Без никак, а если гипервизор то гугли bare metal hypervisor и найдёшь что искал.

mbivanyuk ★★★★★
()

Ты, видимо, не хочешь виртуализацию из-за оверхеда? Не стоит так думать, современные VM работают очень быстро. Единственное место, где могут быть тормоза - это I/O, но и это решаемо.

h31 ★★★★
()

Нет, это не совсем виртуализация, т.к. не дает вообще никаких абстракций к аппаратуре, и не обеспечивает параллельное выполнение нескольких ОС. Только быстрое переключение.

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

тормоза - это I/O,

судя по всяким вбоксам с ИО как раз проблем вообще минимум, т.к. двойное кеширование.
оверхед из-за абтракиции к оборудованию - он будет всегда. при переключении ОС - оверхеда нет, никаких пробросов и шаринга оборудования, все нативно

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

пардон, неверно использован термин. без параллельного выполнения, только переключение.

dib2 ★★★★★
() автор топика

Основная проблема конечно - переинициализация устройств - все будет очень негладко. Можно попробовать проходить полную процедуру усыпление/пробуждение, но с виндой и так может не прокатить.

Винда как раз отлично держит горячее подключение как видеокарт так и любой переферии. А вот макось и тем более линукс ты будешь бутать с ноля ибо их графические стеки не шмагли.

o-
()

Макось

дуалбут за пару секунд?

Чем Parallels Desktop не устроил?

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

Ну если переключать именно работающие ОС то без гипервизора никак, иначе что же их будет переключать? Вот гипервизор и будет. А чтобы накладные расходы были ничтожно малы - bare metal hypervisor. Вообще не вижу проблемы. Почитай например для начала про Microsoft Hyper-V и VMware ESX/ESXi, может это то что тебе нужно.

mbivanyuk ★★★★★
()
Последнее исправление: mbivanyuk (всего исправлений: 1)
Ответ на: комментарий от dib2

при переключении ОС - оверхеда нет, никаких пробросов и шаринга оборудования, все нативно

При пробросе нет никакого оверхеда. Пробрость SATA контроллер и не парься.

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

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

o-
()
Ответ на: комментарий от mbivanyuk

вот собственно, типа bare metal, но программный - т.е. спрятать его в какую-нить область памяти и попытаться защитить. управление передавать от модуля/драйвера по сигналу из userspace.
тут вопрос не о проблеме, тут вопрос реально работающих реализаций на пощупать

dib2 ★★★★★
() автор топика
Ответ на: комментарий от o-

Пробрость SATA контроллер и не парься.

и как к этому отнесется host?

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

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

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

тут вопрос реально работающих реализаций на пощупать

Не совсем понятно чем упомянутые мной реализации тебя не устраивают. Вполне рабочие, щупай на здоровье. Я про Microsoft Hyper-V и VMware ESX/ESXi. Без виртуализации никак, если это для тебя принципиально то ОК.

mbivanyuk ★★★★★
()
Последнее исправление: mbivanyuk (всего исправлений: 1)
Ответ на: комментарий от mbivanyuk

ну тем что еще не почитал, очевидно же)
да, кажись оно. надо попробовать

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

нет, нифига. они оба абстрагируют оборудование, упорин не позволяет мне допустить такое

dib2 ★★★★★
() автор топика

У тебя уже в процессоре, грубо говоря, напихано 3 виртуалки.
8086, 386, х64.

Deleted
()

Т.е. ты хочешь 3ю абстракцию, которая бы пробрасывала твоё железо в ОСы? Или как ты железо будешь инициализировать?

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

долго (уснули на диск -> биос -> граб -> проснулись с диска -> логин -> работаем).
хочется нажать на кнопку и ... уснули в RAM -> проснулись из RAM -> работаем

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

нет, пускай ОСи работают с железом напрямую, включая инициализацию. Делаем sleep, но после подготовки оборудования к спячке не выключаем питание, а будим вторую ОС, которая заново инитит оборудование (достает из спячки). Обычно на все это уходит несколько секунд. Понятно, что работать будет через пень-колоду, но а вдруг.

dib2 ★★★★★
() автор топика

Мечтаю об этом джвадцать лет. Погамал в виндовсе в массэффект и альт-табнунлся в лялих чекнуть почту. Потом альт-табнулся назад. Красотищща.

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

и как к этому отнесется host?

Никак. На куче материнок есть по несколько контроллеров SATA. Ну и никто тебе не мешает загружать хост скажем вообще c USB флешки прямо в память.

тем не менее, частенько это попросту не работает.

Как только проброс настроен он работает железно и всегда.

мне нужно переключать ОСь, без заминок и с сохранением состояния.

Это невозможно так как надо сохранять и восстанавливать состояние многих PCI(е) девайсов у которых все драйвера на других платформах проприетарные.

o-
()
Ответ на: комментарий от anonymoos

Погамал в виндовсе в массэффект и альт-табнунлся в лялих чекнуть почту. Потом альт-табнулся назад.

Если у тебя нету упорина в стиле ТСа, то это уже как несколько лет возможно с виртуалками, достаточно иметь вторую видеокарту и поддерживаемое железо.

А если у обоих видеокарт ещё и открытые драйвера на линуксе, то можно вторую отключать от виртуалки, подключать на горячую к хосту без перезапуска иксов и юзать через PRIME.

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

достаточно иметь вторую видеокарту и поддерживаемое железо.

Слава интелу, сейчас систему без встроенного видео фиг найдешь. Так что допустим вторая видяха у меня есть. Так на чем это делается? KVM?
Разве там можно сделать так, чтобы гостевая система захватила полный контроль над видео и мониторов, чтобы не видеть этих чудовищных задержек и без проблем играть в старкрафт по сети?

anonymoos ★★★★★
()

усыпляет текущую ОС, и будит другую
Переключение должно быть без полной перезагрузки и достаточно быстрым, типа как tty в линуксе переключить.

KVM с пробросом PCI и USB устройств внутрь хостов и сохранением состояния на диск. Чуток костылей и profit.

Но ненужно, потому что 99.9% задач покрывает Linux на железе и винда в ВиртуальнаяКоробка, или наоборот.

selivan ★★★
()
Последнее исправление: selivan (всего исправлений: 1)
Ответ на: комментарий от dib2

мне нужно переключать ОСь, без заминок и с сохранением состояния

Но это и есть виртуализация

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

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

Обычно Intel таки оставляется для хоста, но можно пробросить и интеграшку если тебе её хватит для игр.

Так на чем это делается? KVM?

Да. QEMU / KVM, а настройка через libvirt как например описано здесь. Много инфы есть на сабреддите и в рассылке.

Разве там можно сделать так, чтобы гостевая система захватила полный контроль над видео и мониторов, чтобы не видеть этих чудовищных задержек и без проблем играть в старкрафт по сети?

Если ты выделишь виртуалке свою видеокарту, то естественно она получит и мониторы.

У меня лично хост на Intel HD4600, а в гостя винды проброшена AMD HD6950. Когда нужно я просто подключаю видюху обратно к хосту и юзаю через DRI_PRIME=1. Но мониторы к ней подключенные не юзаю, так как если карту юзают иксы не получалось сделать unbind их не повесив.

o-
()
Ответ на: комментарий от selivan

KVM с пробросом PCI и USB устройств внутрь хостов
и сохранением состояния на диск

Пруф, что у тебя это работает? Libvirt при наличии VFIO в конфигах просто шлет нафиг и снапшоты делать отказывается.

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

Если ты выделишь виртуалке свою видеокарту, то естественно она получит и мониторы.

А можно картинку гнать в окно виртуальной машины.
Вот есть же в винде зеркалирование на несколько мониторов.
Т.е. у системы пусть будет виртуальная видюха+монитор от виртуальной машины и реальная.
Картинка рендерится на реальной видеокарте и копируется на виртуальную.
Что-то вроде Оptimus, только вместо встройки - виртуальная видеокарта.
Так можно?

ls-h ★★★★★
()
Ответ на: комментарий от anonymoos

Ток учитывый, что фишка с горячим подключением видеокарты обратно на хост может не работать на AMDGPU. Точнее, там есть какая-то проблема с unbind карты.

o-
()
Ответ на: комментарий от ls-h

А можно картинку гнать в окно виртуальной машины.

Можно. Способ который нашел Novel-ch: картинка снимается с реальной видеокарты через OBS и выводится на виртуальный монитор.

А ещё можно юзать Steam In-Home Streaming.

Вот есть же в винде зеркалирование на несколько мониторов.

Оно не работает между двумя разными видеокартами. Ну или как минимум точно не работает с виртуальными контроллерами дисплея типа QXL.

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

Что-то вроде Оptimus, только вместо встройки - виртуальная видеокарта.

В винде хоть и есть оффлоадинг (хотя может и он реализуется именно в драйверах вендоров), но на показ он уж точно никак не выставлен. Заюзать его ты никак не сможет это точно.

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

картинка снимается с реальной видеокарты через OBS и выводится на виртуальный монитор.

А что такое OBS?

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