Какой рейтинг вас больше интересует?
|
Уточненное ТЗ по qemu GUI2015-07-17 00:10:58 (читать в оригинале)Эксперименты показали, что в качестве дисплея надо использовать spice. Потому что clipboard sharing это сильно. Ради этого стоит потерпеть и то, что при отсутствии в guest-системе соответствующих тулзов курсор будет ей захватываться и без нажатия специальной комбинации клавиш не отпускаться (у SDL такое поведение просто неотключаемо, а у VNC его нет вообще). Правда, если использовать spice, писать придется на python с использованеием gtk для gui. Был бы VNC, можно было бы на tcl/tk писать, tk widget vnc-viewer-а бывает. Правда, с другой стороны, разные реализации VNC очень сильно отличаются по производительности, и есть подозрение что у Кристиана Вернера - не самая быстрая и не самая фичастая. В любом случае, дисплей получается отцепляемым. А значит, отцепляемым надо делать и монитор, и позволять машине уходить в бэкграунд. Но хочется сделать такую систему, что когда виртуальная ни одна машина не запущена, никаких процессов вообще нет. Возникает идея - монитор цеплять к unix-domain-сокету, имя которого в файловой системе как-то тесно связано с именем машины (либо имеется общесистемная директория с этими сокетами, либо в директории где лежат все файлы виртуальной машины, имеется сокет monitor). Это соглашение, кстати, позволит иметь параллельный интерфейс для управления машинами из командной строки. Уж по крайней мере, system_powerdown туда сказать из скрипта всяко можно будет. Соответственно, при желании присоединиться к работающей машине, мы коннектимся к ее монитору, лочим его (если не смогли - значит там кто-то другой уже работает), а потом спрашиваем у qemu на каком порту он ждет в гости spice/vnc клиента. Благо рассказать он об этом умеет. В принципе, конечно, tcp-порт монитора можно из файла конфигурации машины вычитывать. Но тогда придется его там хранить, а значит - оперативно редактировать этот файл конфигурации, если этот порт вдруг оказался занят. Впрочем, при создании снапшотов его все равно редактировать. Интерфейс должен выглядеть как в левой полосе - элементы управления, а основное поле - экран гостевой системы. Элементы управления сверху вниз removable диски, usb-устройства, снапшоты, а в самом низу кнопкки shutdown/reboot/etc. Над ними - окошко консоли монитора. По верху окна вместо меню кнопки клавиш, которые можно туда послать. Это если мы запустились с параметром "имя машины". Если без него - то предлагаются варианты "открыть машину"/"создать машину". При создании машины предлагается всего два варианта сети на выбор - подключиться к существующему бриджу или использовать user networking. При подключении устройств и дисков должна быть предусмотрена опция "персистентное подклчение". В смысле пытаться при следующем запуске это устройство подключить обратно. При закрытии GUI у нас должны быть варианты выбора - shudown, suspend, background. This entry was originally posted at http://vitus-wagner.dreamwidth.org/1106795.html. Please comment there using OpenID. Now there are comments
|
Категория «Программы»
Взлеты Топ 5
Падения Топ 5
Популярные за сутки
|
Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.