Sign in to follow this  

VM for OS development

This topic is 4304 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

As far as I'm aware, of the three you listed only bochs is an emulator. I can't say for certain about VMWare, but I do know that Virtual PC does NOT emulate the full machine and it cannot run custom drivers. This leads me to believe that it cannot run kernel-mode code at all, and thus doesn't actually do much emulation at all.
You should definitely talk to the support of all the commercial products you consider so you can avoid buying something that would be useless to you.

Share this post


Link to post
Share on other sites
Quote:
Original post by Extrarius
As far as I'm aware, of the three you listed only bochs is an emulator. I can't say for certain about VMWare, but I do know that Virtual PC does NOT emulate the full machine and it cannot run custom drivers. This leads me to believe that it cannot run kernel-mode code at all, and thus doesn't actually do much emulation at all.
You should definitely talk to the support of all the commercial products you consider so you can avoid buying something that would be useless to you.

Virtual PC emulates a complete system, and can run many different PC operating systems.

Qemu and Bochs provide most of the functionality of the others, with Qemu having an advantage performance-wise.

Share this post


Link to post
Share on other sites
Quote:
Original post by igni ferroque
[...]Virtual PC emulates a complete system, and can run many different PC operating systems.[...]
But it can't run arbitrary drivers for arbitrary devices:
Quote:
From Virtual PC 2004 Technical Overview
[...]Virtual PC does not support USB devices that require their own drivers. Virtual machines also don’t see the physical computer’s hardware video card as a native device, so you can't install your own video card drivers. In addition, SCSI devices are not supported in a virtual machine.[...]

Share this post


Link to post
Share on other sites
That's because it is an emulator of (some of) the hardware, and therefore needs to provide a virtual layer for each type of device. Instead of passing-through the USB stack (which would piss off the host OS) it emulates it.

Share this post


Link to post
Share on other sites
It can't be that difficult to make drivers that pass data through to the virtual machine considering how similar to that task some of the DDK examples are.

Anyways, makes it kinda useless if you want to write drivers (which is what I wanted it for)

Share this post


Link to post
Share on other sites
Quote:
Original post by Extrarius
I can't say for certain about VMWare, but I do know that Virtual PC does NOT emulate the full machine and it cannot run custom drivers.


VMWare emulates the hardware. When I once wrote an UDMA driver for my own OS I noticed that VMWare emulated a PCI bus (Bochs did not provide emulation for PCI at this time) and the whole register set you would expect from UDMA drives.

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
VMWare server is now available for free if no one else has mentioned it. Currently using it to run Windows 98 on Windows XP. Has a better UI compared to BOCHS.

www.vmware.com

Share this post


Link to post
Share on other sites
Quote:
Original post by Extrarius
Anyways, makes it kinda useless if you want to write drivers (which is what I wanted it for)


None of these emulators/virtual machines allow access to the host hardware - Bochs and Qemu, at least, are merely user-mode programs! None of them will be any use for testing drivers unless you want to write drivers for the emulated hardware (For MSVPC - S3 video card etc).

Share this post


Link to post
Share on other sites

This topic is 4304 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this