Saturday, February 21, 2009

Future of Linux desktop: co-Linux on Android

We're at the native Linux desktop, moving towards the Android desktop (netbooks coming soon). What would bridge those two environments, is to offer a second Linux sandbox which runs along with Android.

Android has a very specific architecture, with its own libraries and non-X based GUI, which are not conducive to running standard Linux/X applications. Even it's libc version (bionic) omits certain POSIX features, making it not fully compatible. Android apps have to be targeted for and compiled against Android.

To allow native Linux apps to run, a second sandbox environment is needed, which can co-operate with Android. Android would be the master environment, providing all of the kernel, hardware drivers, and complete software stack that it already does. The co-Linux environment would provide a separate set of non-kernel components: libraries, configuration and administrative files, applications, etc. As Android drives the hardware, the co-Linux environment would need to defer to Android for some facilities. For example, X apps running under the co-Linux would need to speak with a special X server running on Android. The audio system on the co-Linux would likewise need to redirect to Android's audio manager. But the co-Linux environment would not need any boot-path files (Android takes care of booting), nor its own kernel.

Using a chroot sandbox is nothing new; it's used by Linux build environments such as the Moblin image creator, and to create a nice clean 32-bit environment on a 64-bit Linux box (even for X apps). Doing some porting work, would take the same concept to an Android environment. Perhaps further work could make the two environments more seamless to the user (UI, disk files, installation, etc.).

Note that another way to come at this, is to put the co-Linux environment in a VM, but there are downsides. First is that running a second kernel and VM in general adds more power consumption, burns more CPU cycles and consumes more memory; not a good thing for a constrained mobile device. And second, current Intel Atom netbook processors do not support virtualization.

I would think a co-Linux would be a boon for coming netbook platforms, where some users may want to chose from the available native Linux apps, including educational, gaming, just plain familiar, or otherwise. It would be really cool if the co-Linux environment itself could be bundled as an Android app. In any case, bundling key native Linux apps as Android apps, would be a fantastic way to piggy-back on the Android Market and ecosystem, without building out any new infrastructure. This would also enable one to focus on delivering only those apps that add significant value, and not spend time duplicating technical efforts with Android. In fact, I believe this could be the future of the Linux desktop distro, until the time when all apps are available on the cloud. And what a perfect use-case for portable Linux packages using Zero Install, which removes vendor specific head-aches and is appropriate for application level packages. Disruptive play for a new age desktop Linux company?

Disclosure: no positions

Monday, February 16, 2009

Linux winners will be deal-makers with Microsoft

We have just entered a new era in interoperability between Linux and Windows.

The Desktop

A week ago, Google announced that they licensed Microsoft's Exchange ActiveSync protocol technology, and released a beta of the Google Sync service. Google Sync is a new push technology that allows over-the-air sync of Google calendar appointments and email contacts, across a number of handset environments including Windows Mobile devices. This was a wise move and one with a desktop component best described in a related quote I found:
"... a solid step in Google's march toward owning the desktop."
If Linux wins ground on the desktop, it won't be because the Bell Curve of users cares it's Linux -- it'll be because the desktop gives users what they want. Easy synchronization is essential. At the same time, I believe this was smart of Microsoft. Android and Google services are gaining traction, and at some point Microsoft has to capitalize on the areas it has value, rather than trying to own the entire space. What'll be interesting to watch is whether Google Sync will be supported by Ubuntu, Moblin, and other Linux platforms.

The Server

Today's news was the clincher on the server side; Red Hat and Microsoft agreed to validate each other's operating system on their respective virtualization hypervisor technology. Once validated by both parties, customers with valid support agreements will receive cooperative technical support. What was really impressive is that Red Hat pulled this off without patent or financial clauses. I believe this deal was inked, simply put, because customers demanded it. It also shows Red Hat has some serious pull, not surprising given their beat-the-street quarter and posture to gain some new ground as a result of poor economic times.

Winners and Losers

The market has spoken; it wants choice, interoperability and support. Enough players with clout have signed on. Although, this creates a whole new dynamic for other players in the Linux vendor space. Vendors who have not struck such deals are at a disadvantage until they do. If they aren't able to make the deals, they risk getting boxed out, or at least getting relegated to the fraction of the market formed by pure Linux shops.

Disclosure: no positions

Thursday, February 5, 2009

Canonical half as revenue efficient as Red Hat, per person

Canonical is the company behind Ubuntu Linux.

Recently, Canonical's CEO gave some indications of their annual revenue (about $30 million/year). As Canonical is a private company, there hasn't otherwise been a lot of financial information forthcoming. However, it's estimated that Canonical has 200+ employees.

This makes for an interesting opportunity to compare revenue efficiency on a per-employee basis with Red Hat (RHT), a competing public Linux company. Red Hat has approximately 2200 employees and its estimated 2009 revenue is 653.65 million dollars. I love this as a first order comparison between direct competitors to see how efficiently companies generate revenue.

That would put Red Hat at ~300K dollars per employee and Canonical at ~150K dollars per employee, or only half. To add some perspective, Microsoft rakes in ~676K dollars per employee. To be fair, Canonical is a younger company, and has likely made investments that will need time to play out on the revenue front. What I can say is that at the bottom end of the Linux commercial spectrum, a trend is that some customers tend to opt for supporting themselves with their own IT departments. I wonder sometimes if Red Hat loses more on the bottom end to CentOS than Canonical earns, due to this trend.

As Android ramps into the netbook space and beyond, I think it'll grab more Linux desktop market share. A co-Linux strategy might be a good thing for Linux desktop vendors, providing the native Linux apps that Android doesn't have. But it's not clear to me what course Canonical has set, with Android invading the desktop, and their server business being lower on the totem pole than Red Hat's. Canonical will have to scale much bigger to capture any real share of the server business.

Fwiw, I use Ubuntu (and others) myself, and worked for a Linux distro before. It's a tough gig. But I like the community element of Ubuntu; it's a philanthropic success in any case.

Disclosure: no positions