Open Source In Action: Open Source Projects from VMware
As a leading edge software company, VMware has a long history of support for open source software in its products. It also contributes back many patches and projects to the open source community including the vijava API that I created. With SpringSource and Zimbra acquisitions, more open source projects are associated with VMware brand.
Here is a list of 10 home grown open source projects from VMware. Please feel free to click links for more details and play with them.
1. Dr. Memory. It’s “a memory monitoring tool capable of identifying memory-related programming errors such as accesses of uninitialized memory, accesses to unaddressable memory (including outside of allocated heap units and heap underflow and overflow), accesses to freed memory, double frees, memory leaks, and (on Windows) access to un-reserved thread local storage slots.”
2. Virtual USB Analyzer. A “free and open source tool for visualizing logs of USB packets, from hardware or software USB sniffer tools. As far as we know, it’s the world’s first tool to provide a graphical visualization along with raw hex dumps and high-level protocol analysis.”
3. VMware SVGA Device Developer Kit. It’s “a package of developer-oriented documentation for the details of this virtualized graphics interface. It consists of some basic documentation, as well as a package of example programs which demonstrate how to draw 2D and 3D graphics inside a virtual machine. These examples run on the (virtual) bare metal, without any OS or any other graphics driver loaded.”
4. DynamoRIO. It’s “a runtime code manipulation system that supports code transformations on any part of a program, while it executes. DynamoRIO exports an interface for building dynamic tools for a wide variety of uses: program analysis and understanding, profiling, instrumentation, optimization, translation, etc. Unlike many dynamic tool systems, DynamoRIO is not limited to insertion of callouts/trampolines and allows arbitrary modifications to application instructions via a powerful IA-32/AMD64 instruction manipulation library.”
5. Operating System Specific Packages (OSPs). It’s “a packaging and distribution mechanism for VMware Tools. These VMware Tools OSPs are packaged using the native package formats and standards, for example, rpm and deb, of the supported guest operating systems.
6. VMware Infrastructure Java API. It’s a Java API with full object model to manage VMware ESX and vCenter Server (also known as vSphere). A new Web Service engine has been included since 2.0 and resulted in much faster performance and lighter code size.
7. Open Virtual Machine Tools. It’s “the open source implementation of VMware Tools. They are a set of guest operating system virtualization components that enhance performance and user experience of virtual machines. As virtualization technology rapidly becomes mainstream, each virtualization solution provider implements their own set of tools and utilities to supplement the guest virtual machine. However, most of the implementations are proprietary and are tied to a specific virtualization platform.”
8. VMware Infrastructure Perl Toolkit. It’s “a suite of software that includes VMware ESX and VirtualCenter Server. It also includes the VMware Infrastructure (VI) API, a web service that enables the development of third party applications and scripts that integrate with VI.”
9. Libview (a.k.a. VMware’s Incredibly Exciting Widgets). It’s “is a collection of open source GTK+ widgets developed for use in the Linux Workstation and Player products. Originally they were closed source and part of Workstation, but we realized they had usefulness outside our products and decided to give back to the open source community.”
10. XOrg Video and Mouse Drivers. “The video driver was one of the first pieces of software ever released as open source by VMware – back in 2002, and as a result, it is automatically present in, and usually auto-selected by, any recent (or not so recent) Linux distro. Having the video driver already selected on a fresh install, or even in the installer itself, greatly enhances the initial user experience. The mouse driver, on the other hand, is one of our more recent open source releases – made at the beginning of 2006. As a result, although it is available on all recent distros, it is not currently auto-selected at installation time; however, we’re pleased to be able to say that Ubuntu 7.10 (Gutsy Gibbon)will be the first, and you can see this in action in the most recent Tribe-5 preview.”