[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] Unified device model

From: Stanislav Shwartsman
Subject: [Qemu-devel] Unified device model
Date: Sat, 8 Apr 2006 21:57:10 +0200

Hello All,


It is not a secret that all open source emulators (QEMU, Bochs, Xen) use the same emulated devices and mostly copy-paste their emulation one from another.

I don’t know who originally wrote the device models but now Bochs and QEMU maintain two similar implementations of the same devices.

If one of the teams fixes the implementation or add functionality, another team mostly copy-paste the changes to their model.

Xen project forked from QEMU and want to stay in touch with Bochs and QEMU device models and contribute the changes to make the model better.

I am wondering about making unified device models architecture for open source simulators.

The device models will be used in QEMU, Bochs, Xen and other open source simulators which would use the device models.

I know about two professional teams working in simulation which would like to use these device models in their simulator and

could enrich the device library with new devices device interfaces, for example with AGP and 3D graphics.

Bochs is already in middle of definition of new true pluginable devices architecture.

In near future Bochs devices will fully separatable from Bochs binary and when could be developed separately from Bochs.

I call to QEMU developers join to this project and come with their requirements to plugin architecture.

I don’t know if QEMU supports device plugins now but I would like to see QEMU a part of this idea,

I would like to get single device shared library which could be loaded to Bochs and QEMU and work perfectly for both.

This will eliminate the need to maintain two separate implementations of the same devices,

these implementations very fast will converge to single one, C or C++ based, Bochs or QEMU based, doesn’t matter.

I am listening for your opinions !




reply via email to

[Prev in Thread] Current Thread [Next in Thread]