LINUX.ORG.RU

QEMU 1.0

 ,


0

2

Выпущен знаковый релиз системы виртуализации QEMU 1.0.

Заявлены поддержка новых систем-хостов и новых эмулируемых процессоров (в основном ARM). Основные изменения касаются управления памятью и блочными устройствами. Также QEMU теперь зависит от библиотеки GLib и активно её использует.

Начиная с версии 1.0 возможна «живая миграция» виртуальных машин с использованием QCOW2-образов на разделяемом хранилище.

Сайт QEMU

>>> Подробности



Проверено: Shaman007 ()

API для эмуляторов устройств сильно поломали по сравнению с 0.14?

И кто-нибудь знает, чем отличаеются TCI и TCG? :)

tailgunner ★★★★★ ()

Пусть в этой версии можно будет снимать трассу инструкций и прерываний... Пусть в этой версии можно будет снимать трассу инструкций и прерываний...

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

Зачем?

Отлаживаться. Разве на x86 есть открытые эмуляторы с этой фичей?

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

а еще лучше "-d cpu,exec,in_asm" Вот пример (правда на арме, но на x86 тоже работает)

IN: 
0x40014708:  ea000000      b    0x40014710
 
R00=00c51878 R01=00000001 R02=00000000 R03=00000000
R04=00014000 R05=00000000 R06=0000030f R07=00000000
R08=00000000 R09=00000000 R10=00000000 R11=00000000
R12=00000000 R13=4020fcac R14=40014904 R15=40014710
PSR=600001d3 -ZC- A svc32
----------------
IN: 
0x40014710:  e28f0028      add  r0, pc, #40     ; 0x28
0x40014714:  e8900c00      ldm  r0, {sl, fp}
0x40014718:  e08aa000      add  sl, sl, r0
0x4001471c:  e08bb000      add  fp, fp, r0
0x40014720:  e24a7001      sub  r7, sl, #1      ; 0x1
0x40014724:  e15a000b      cmp  sl, fp
0x40014728:  0a000164      beq  0x40014cc0
 
R00=40014740 R01=00000001 R02=00000000 R03=00000000
R04=00014000 R05=00000000 R06=0000030f R07=4001b82f
R08=00000000 R09=00000000 R10=4001b830 R11=4001b860
R12=00000000 R13=4020fcac R14=40014904 R15=4001472c
PSR=800001d3 N--- A svc32

XVilka ★★★★ ()

Зато в дебиане 0.12.5 стабильно и надежно лол

JackDaniel ()

Нубский вопрос - с помощью эмулятора можно писать прожки под коммуникатор на ARM'е?

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

Когда вы прочитаете документацию?

anonymous ()

почему про GLib еще никто не вспомнил? 0_о

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

Святое никто не трогает. Все боятся кары...

anonymous ()

А маскота какого они выбрали-то?

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

Зато в дебиане 0.12.5 стабильно и надежно лол
sid и stable не различаешь?

я, может, что-то не так читаю? где в твоих словах 'stable' ?

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

а еще лучше "-d cpu,exec,in_asm" Вот пример (правда на арме, но на x86 тоже работает)

В моей версии qemu такого нет, попробую обновиться.

А можно трассировать, начиная с первого попадания на некоторый IP, или все обращения по определенному адресу?

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

а в bochs такой возможности нет?

Никогда не пробовал. Вроде бы, говорят, что он медленный

ttnl ★★★★★ ()

в связи с новостью, хочу спросить - где взять нормальные рабочие _предустановленные_ образы Ubuntu Core для ARM чтобы можно было запустить в qemu-system-arm с процессором cortex-a8?

я убил целый день что-то пытаясь скачать запустить и т.п. вот для Debian 6.0 есть рабочие предустановленные в минимальной комплектации образы для qemu-arm

есть ли такое для бубунты 11.10 armel? распаковал & запустил & enjoy? как у Debian 6.0...

I-Love-Microsoft ★★★★★ ()

QEMU не нужен.

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

да, Беллард уже частично переписал на java script

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

к сожалению нет, они пилят новый движок трассировки, но он пока нестабилен.

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

Тоже вот интересно, GVFS или кроссплатформенные потоки?

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

к сожалению нет, они пилят новый движок трассировки, но он пока нестабилен.

Значит, я жду как раз этот движок

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

Если вспомнить что glib чистый Си - то может и имеет смысл использовать что-то из него. Не хотят товарищи полагаться на другие библиотеки на других ЯП (да, я про плюсы вообще, и о кьюте в частности).

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

API для эмуляторов устройств сильно поломали по сравнению с 0.14?

Сильно из-за т.н. memory-api. Я свой код до сих пор не портировал. А какие у тебя устройства?

И кто-нибудь знает, чем отличаеются TCI и TCG? :)

TCI и TCG оба транслируют в платформо-независимый код. TCG компилирует его в платформо-зависимый и исполняет, TCI - интерпретирует. Нужен в первую очередь, на платформах, которые не поддерживаются TCG, потому что гораздо тормознее...

То есть, теперь qemu приблизился к bochs по количеству поддерживаемых хостов.

alt-x ★★★★★ ()

Интересно, на нём уже запускается микроядро L4 Pistachio? MS Virtual PC и VMWare великолепно работют с L4, а QEMO - никак.

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

> Что даст использование glib?

Одна из самых существенных универсальных библиотек для C. Помимо весьма своеобразного GObject там ещё куча всего есть, что очень сильно облегчает написание приложений (особенно портируемых).

Divius ★★ ()

На сабже уже можно эмулировать sparс и запускать 10й Solaris?

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

Одна из самых существенных универсальных библиотек для C

[off] ЕМНИП не только GTK+, но даже Qt на ней базируется. Заметил это в бэктрейсе то ли gdb, то ли valgrind'а - уже не помню [/off]

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

Никогда такого не было. Только что для проверки запустил qemu 0.15 с 2048 Mb

franchukroman ★★☆ ()
Ответ на: комментарий от alt-x

API для эмуляторов устройств сильно поломали по сравнению с 0.14?

Сильно из-за т.н. memory-api.

Вот же епт.

А какие у тебя устройства?

Всякая сигнальная обработка на ПЛИС. С точки зрения взаимодействия с Qemu они не очень сложные - mmio и немного DMA.

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

Qt никаким боком не базируется на GLib. Там только лишь *опционально* использоваться GLib-овский event loop (ЕМНИП, для уменьшения количества возможных глюков при взаимодействии Qt-шных программ с не-Qt-шными (<troll>в отличие от некоторых, разработчики Qt не считают себя пупом Земли и думают об интеграции с окружением, на каком бы фреймворке оно не было основано</troll>)), и все.

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

Какой возможности ? Что должно делаться ? Как трасса инструкций и прерываний выглядит ? На bochs есть поддержка модулей инструментации, который поставляется с готовыми написанными примерами. Самый базовый пример, который там есть по-моему именно это и делает.

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

Да, они используют glib-mainloop, что говорит об универсальности этого решения (ага, в отличие от mainloop Qt)

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

Они используют GLib event loop, потому что

This has allowed people to plug Qt into the Glib main loop fairly easily, resulting in an application that can use any of the Qt, GTK+, KDE, and GNOME APIs.

и

To enable closer integration with the GNOME deskop environment and tools, Qt 4.2 now contains support for the Glib eventloop. This makes it possible for Qt applications to use plugins made using other Glib-based frameworks, and even enables Qt plugins to be created for use with non-Qt applications.

Что говорит об универсальности Qt, который умеет интегрироваться в чужеродные окружения и которому пофиг, с каким event loop-ом работать. В отличие от прибитого гвоздями к «GLib&co» GTK+ (при всем уважении к разработчикам GTK+, мне не нравится их упорное нежелание хоть как то подстраиваться к конкурентам — Qt из коробки и гткшные темы умеет подхватывать, и «чужой» event loop использовать, и порядок кнопок в диалогах менять, когда видит, что приложение запущено в GNOME (возможно, список «интеграционных» фич куда больше), для GTK же разве что сделанные сторонними разработчиками QtCurve и т.п.).

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

а еще лучше "-d cpu,exec,in_asm"

Ну, тогда и ",int," туда же. Но тут есть нюансы: cpu забивает лог, на мой взгляд избыточной информацией - зачем писать одни и теже регистры, если изменений не было. В результате существенно меняется тайминг. Как-то занимался ловлей бага, который пропадал даже при стандарном «in_asm,int», не то что ",cpu,".

C «in_asm» тоже не всё так просто: то что блок оттранслировался, не значит, что он исполнится [полностью], ну и в другую сторону - исполнится может и ранее оттранслированный блок, взятый из кэша.

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

Да, собственно формат вывода лога ужасно неудобный. Но это пока не будет переписан полностью движок трассировки.

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

Да, новая трассировка - это первый шаг к удобной отладке, но как только он будет сделан, пользователям сразу захочется иметь полноценный replay и reverse execution. А вот с этим - полная засада. Потребуется пол-движка переписать, а может и поболе.

alt-x ★★★★★ ()
Ответ на: комментарий от alman

Интересно, на нём уже запускается микроядро L4 Pistachio? MS Virtual PC и VMWare великолепно работют с L4, а QEMO - никак.

У меня QEMU 0.12.3, отлично гоняет Pistachio и все прилагающиеся к нему тестовые root-серверы. Пересобирал и в SMP, и без SMP.

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

Интересно, на нём уже запускается микроядро L4 Pistachio? MS Virtual PC и VMWare великолепно работют с L4, а QEMO - никак.

У меня QEMU 0.12.3, отлично гоняет Pistachio и все прилагающиеся к нему тестовые root-серверы. Пересобирал и в SMP, и без SMP.

+дополнение. И запускал я pistachio на qemu ещё пару лет назад. Никогда проблем не было.

try this: http://www.datafilehost.com/download-b3c83a9f.html Запуск --- просто make

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