2010. február 13., szombat

Are smartbooks and Linux meant for each other?

Smartbooks are an upcoming mobile computing device category built around ARM's Cortex A8 and A9 line of processors. These devices are awaited with great anticipation because they promise a mixture between smartphone features (ultra-portable, 3G connected, always-on) and the functionality of netbooks/laptops (>9" screen, seamless web browsing, laptop-like computing performance...etc) at a price point lower than that of current netbooks (sub-$300). Some smartbooks will arrive in the tablet form factor, some of them will come in the more traditional laptop form factor. All of them are expected to be comparable to netbooks in processing power (see this and this).


It is an intriguing question whether smartbooks will widen Linux adoption and erode the often criticised monopoly of Windows on pc-like computing devices.

Since the desktop line of Windows currently doesn't run on ARM processors, we can exclude XP/Vista/7 from the list of likely contenders as smartbook operating systems. Windows 7 successors are currently not planned to be ported to ARM and even that wouldn't be a complete solution since Windows applications will have to be ported as well (a very wide, close-sourced ecosystem).

Microsoft has Windows CE for ARM processors. Windows CE has already been deployed several smartbook-like devices (e.g. the original Psion Netbook) so it is definitely a contender in this market. However, WinCE 6.5 currently doesn't support multiple or multi-core processors  and more than 512Mb of RAM so advanced ARM SOCs like the Tegra2 would be very much limited by this OS. Solving multi-processor support will require significant investment from Microsoft. Incompatibility with the desktop line of Windows is also a severe limiting factor for WinCE. WinCE devices cannot be sold on the appeal of general Windows-compatibility, the user will not be able to install Windows applications onto the device.

Linux on the other hand has a very good technical background on ARM. It has no limitations for processing cores and operating memory and has targeted distributions for this architecture. Android is an outstanding example but several well-known distributions - like Ubuntu - have ARM ports in addition to their x86 base edition. Also, due to the fact that most of the Linux applications are open-source, they are at least possible to port, so we can expect the full usual complement of desktop Linux applications to show up on an ARM Linux distribution when the need becomes visible for them.

Technical factors aside, there is always the argument for Linux: being free . This may be important with smartbooks due to the very low targeted price point which doesn't tolerate even moderate OS licensing fees (like $50/unit). So unless Microsoft gives Windows CE for practically free, Linux has the advantage here.

Since Windows CE has practically no advantages over Linux on ARM (in fact quite the opposite), Linux has a fairly good chance to be deployed on smartbooks as the primary operating system shipping with the device. Now, we can get into specifics. What kind of Linux and what kind of GUI?

Google's Android is a very special Linux distribution. It's touch-oriented GUI is simple and usable but it doesn't run X-Windows so lacks the usual full-fledged Linux applications (Android applications are specifically written for the Dalvik virtual machine and its APIs in Java.) With this in mind, and considering the current frenzy around Android, I expect it to be deployed heavily on smartbook tablets. This form-factor is ideal for use cases in which full-fledged desktop applications are not necessary (e.g.: a web tablet with media player capabilities). More advanced Linux users will likely be able to install a full desktop Linux onto their tablets but the average consumer will be satisfied with Android.

However, laptop-like smartbooks with keyboards are better served with a full-desktop Linux like Ubuntu due to the fact, that on these devices, buyers will expect full-fledged applications like OpenOffice, Thunderbird, Firefox...etc. Android would be very limiting for the use cases expected from a netbook/smartbook (editing complex text documents, spreadsheets, using a full-fledged browser, email client...etc). I believe, the exact GUI environment is not really important for this kind of smartbooks although some netbook specific desktop environments (like Ubuntu Netbook Remix and Moblin) may be more efficient for smartbook models with low-resolution screens (below 1024x768).

My conclusion is that every kind of smartbook device can be put to its full potential with a properly customized Linux variant. Manufacturers seem to be aware of this since most of the already announced products are known to ship with Android (e.g.: Notion Ink Adam) or hinted to ship with some kind of Linux (e.g.: Lenovo Skylight).