...
Which Virtualization Software?
Starting To start, experimenting with VirtualBox , but since we're only concerned with Linux for now, VMware (VMplayer product) would do as well; there may be other suitable candidates. Advantages of VirtualBox compared to VMware are
- Supported OSes VirtualBox supports Linux, Windows and Mac for client and host (though there are a bunch of restrictions for Mac, mostly due to the way Apple does things). VMplayer supports Linux and Windows
- API VirtualBox has C++
- VirtualBox API (the same one used internally, hence complete) supports C++, python, and any other languages that understand (Microsoft) COM or, on non-Windows platforms, XPCOM for applications running on the host. There is also a web service which implements nearly the complete API. Any language with a toolkit for wsdl can use this. It's especially easy to use from Python and Java because the VirtualBox SDK includes wrapper classes for these languages.
- The free SDK product VIX can be used with VMplayer. Functionality is somewhat limited compared to use with non-free products VMworkstation and vSphere, but may be sufficient for us. In particular, it does include the ability to start a program on a VM. Bindings exist only for C, Perl, and (Microsoft) COM.