Bring Your Own PC

November 24, 2008

We have been talking with quite a few companies (and relatively for a young company, we are pretty well known in our space) and it seems that a lot of Enterprises are looking into the “Bring-Your-Own-PC” (“BYOPC”) kind of model. This is not surprising by itself – the point I want to make is that this trend is either complementary or in lieu of VDI.

What I believe has happened in the last 2-3 months is that after the big companies has spent a lot of their marketing dollars on promoting VDI, IT are now pretty well educated about the benefits of “Machine Virtualization” (not to be confused with the slew of other virtualization technologies out there) and want to apply the same benefits on endpoints.

The main advantage IT sees is the sort of “outsourcing” of owning the hardware. They want to shy away from owning the hardware and focus on “owning” the software part (OS + Applications).

Neocleus shines in delivering on the promise of the BYOPC since our architecture allows the original OS to continue operating in full pass-through mode delivering unhindered user experience.

I believe that this is the direction “personal computing” will follow in the years to come – quite a few people will own a personal device and will use it to serve different “persona”s.

 


Will IOMMU enable pass-through support “out of the box”?

November 5, 2008

I often hear people saying that IOMMU will enable pass-through support “out of the box”, it’s such a common assumption that I thought it’s important enough to discuss it.

Just as a background for those of you who aren’t too familiar with the IOMMU – it’s an hardware unit, which takes care of mapping device-visible IO addresses to physical addresses (it’s very much like the traditional MMU which translates CPU-visible virtual address to physical address). The IOMMU main goal is to “virtualize” the memory which the devices are using.

The latest Xen versions can utilizes the IOMMU, to assign physical devices to virtual machines – which is what we call: “pass-through”. This is probably the main reason which makes people think that IOMMU will enable pass-through support out of the box. However, even a simple wireless device doesn’t work in pass-through “out of the box” since it has other dependencies than memory, which the IOMMU doesn’t solve.

The reason why IOMMU alone cannot deliver device pass-through, isn’t because of insufficient implementation in Xen, it’s simply because the IOMMU wasn’t designed and cannot solve the many architectural problems which arise when performing pass-through. If you think about it – IOMMU mainly solves the device-visible memory virtualization problem, however it doesn’t handle the other stuff which devices may need in order to work: ACPI, inter-chipset dependencies (some of the devices, depend on configurations of other devices in the chipset), etc. That is also the main reason, why even after the IOMMU is out-there quite a time – no one has published an implementation of code which does complete pass-through for graphics devices (by “complete” pass-through – I mean, that the native drivers of the graphics card can run inside the virtual machine).

The bottom line is – IOMMU solves some of the device pass-through problems, and is a good step towards full hardware support for device pass-through, but it doesn’t enable device pass-through support out of the box.