Mobile OS-es

Since few months, to be more precise since October 2009, I started to be interested in mobile phone software development. This was on one side due to the increasing use of software on mobile phones and to the new employment opportunities that it opened. It has become a reality that computers (and also
computing in general) nowadays are getting smaller and portable, so I think it is possible that software developers will migrate into this field.

On the other side the fact that mobile phone industry acquired a big slice of the embedded systems industry, the one where I am currently working
and in which I am seeking to improve my knowledge, is a powerful reason for any embedded system engineer to have a look on it.

The purpose of this post is simply to outline the biggest players in mobile OS industry, outlining the native programming language in which are written, hardware that it runs on, whether or not the OS itself or corresponding SDK are open or closed source, in other words how can someone start writing applications for it and a little bit about their history releases. I started myself to read some Symbian tutorials and to run some basic applications and maybe in some future posts I will make an attempt to write about those first experiences.

But who are the biggest players in mobile OSes? Which one among the technology giants won the bid for the mobile OSes market share? As it may seem obvious to be this is Nokia, with its Symbian product. Top 5 looks like this:

    1. Symbian OS – 51%
    2. Blackberry – 21%
    3. Apple iPhone – 13%
    4. Windows Mobile – 9%
    5. Google Android – 3%

But in the last two years Symbian’s competitors became more and more powerful and many analysts appreciate that, even if it will maintain its supremacy,
it will loose at least 10 percents. But who are those five owners of the mobile OSes market and what is their historical background in mobile industry ?

Let me take them from up to bottom and say a few words.

Symbian OS is the succesor of old EPOC operating system for mobile devices, designed in late ’80s mainly for PDA’s and which runs exclusively on ARM processors. EPOC was designed by a company named Psion which merged in 1998 with Ericsson, Nokia and Motorola to form Symbian Limited. Ten years after this union was formed Nokia annouced that they intend to buy rest of the shares of Symbian Ltd. but in the meantime, with the help of recent owner Nokia, Sony Ericsson, TI, AT&T, Samsung, Vodafone and few other actors in the mobile phone and mobile network industry, was formed a non-profit organization called Symbian Foundation. Fundation’s main purpose was to freely publish and distribute Symbian OS and its associated User Interfaces under the name of Symbian Platform. Before foundations’ existence the operating system itself did not provided User Interface, those were an upper layer and were developped separately. Example of UIs are Series60 (the most known being 3’rd Edition), which is for Nokia and Samsung smartphones, MOAP, targeted for Japan market and UIQ, especially for Sony Ericsson. The new integrated Symbian platform was called Symbian^1 (pronounced Symbian One) and it was the first Symbian OS release which integrated, on top of older Symbian v9.4,different User Interfaces into a single one, based on S60 5’th Edition, succesor of 3’rd series.

Blackberry smartphone belongs to the canadian company Research in Motion, which manufactures it but also provides the proprietary operating system that runs on it. It worth mentioning also that among business users Blackberry is number one, ahead of Symbian, concerning the number of smartphones shipped. Actually Symbian owes its success to Asian market. If it is to exclude this part of the world Symbian will hardly reach top 5. Blackberry devices generally use Intel processors, but earlier devices used ARM cores as well. The OS kernel is developped in Java and the latest stable release is, let’s consider  it simpler 5.0, supported by Storm 9530 device.

iPhone OS, known in the past as OS X, is developped by Apple, based on MAC OS X and is closed-source. It runs on ARM processors, despite previous experiences of MAC OS of using Intel, PowerPC and Motorola MC68x cores. Current release of it is 3.1.2, an update of 3.1. It is written in Objective-C, a language intensivelly used before at Apple for writing applications for MAC OS as well as the kernel itself (actually Steve Jobs, founder of Apple Inc. when he left it for NeXT licensed his own Objective-C compiler and libraries). The SDK for developping iPhone OS applications is Xcode, which is free as well as the iPhone simulator that comes with it, but loading and testing an application onto a real device costs around 90$. XCode is broken down into four abstraction layer, going bottom-up those are: iPhone OS kernel, which is based on XNU kernel (an operating system developped at NeXT and used in MAC OS X), core services (an API providing functionalities for networking, databases, core location – some kind of GPS function – and threads), media and last one Cocoa Touch.

Now we came to that point of discussion when Microsofts’ product is presented, it is not a great moment of pleasure for me, there are a lot of PROs and CONs (I would say many more CONs) to say about this company, but maybe in another topic. In any case Microsoft does not enjoy the very privileged position as in the desktop operating systems markets and this is mainly because they really found strong competitors when they stepped into the mobile industry. You guessed it: Windows Mobile, this is number four. This is mainly based on Windows CE (Consummer Electronics), version 5.2 designed by Microsoft for small computers and embedded systems. Many rumors have been heard about its uncertain future and about the fact that Google decided to enter into the mobile market just in a moment when it could eat up their market share. In any case statics have shown that Windows is loosing terrain in smartphones market year after year. In times when the market is generally raising 20% Microsoft looses 2 or 3%. Currently the last stable release is Windows Mobile 6.5, but during this year it is scheduled Windows 7, to which are bound many hopes of a Microsoft revival in the smartphone industry.

Windows Mobile runs on Intel processors, an already well-known partnership, but it supports also ARM, Hitachi and MIPS, but you can find here a list of devices which integrate those cores. The IDE used for developping applications for Windows Mobile as well as for Windows CE is Visual Studio.

Android existed before being bought by GOogle, but after the acquisition, Google created an Open Alliance, called Open Handset Alliance and whose members included Texas Instruments, HTC, Intel, Motorola, Qualcomm, LG, WindRiver Systems and many others, in total 65, I think some additional members like ARM and Sony Ericsson joined later, in order to strongly compete against the big players on the mobile scene: Nokia, RIM, Symbian, Apple, Microsoft. The main goal of this foundation is to develop free standards for smartphones, Android being so the first open source software platform for mobile devices. Since October 2008 anyone can download operating system source files from here .

First device that run Google Android operating system was HTC Dream, but you can find many more which are shipped with Android preinstalled here. It is also possbile to hack a smartphone which come with another operating system and to install, with limited functionality, Android on it. As far as I read from the official Adroid site Google itself started to be a smartphone manufacturer, their first device being called Nexus one. If you want to start making applications for Adroid smartphones you can download for free the Android SDK, currently last release being 2.1  Eclair(available for Linux, Windows and MAC platforms) and start working . The official IDE is Eclipse using Adroid Development Tools Plugin.

Here you may find a useful pie showing which of the SDK’s is the most spread among Androids’ devices, 2.1 has very few additional changes with respect to 2.0.1 and it is worthwhile to know also that more than half of the Android devices support 1.6.

So far this was the complete presentation … how will it look like after 3 or 5 years is interesting to know. How much will grow the smartphone industry and how large will be the cash volume in mobile OS market compared to desktop OS-es, those are also reasonable and intersting questiones which remain open.


10 Responses to Mobile OS-es

  1. Thank you Nice Article.
                Nursing PDA Software helps simplify many challenges for nurses. With so much nursing Software for PDAs, doctors, patients and even student nurses can benefit greatly because of instant access to information vital for many areas of nursing.

      See Full More. Thank you!

  2. Thank you Nice Article.

    Nursing PDA Software helps simplify many challenges for nurses. With so much nursing Software for PDAs, doctors, patients and even student nurses can benefit greatly because of instant access to information vital for many areas of nursing. See Full More. Thank you!

  3. kellogs says:

    Well crafted article!

    However, XCode remains the Mac OSes IDE, while not being a SDK. Please correct the error.

    This question becomes obsessive. After such an analysis, you have chosen Symbian. Dear Lord, why ??

    • Yes… thanks for the notification, basically the definition taken from apple website is

      Tightly integrated with the Cocoa and Cocoa Touch frameworks for building Mac and iPhone apps, Xcode is an incredibly productive integrated development platform.

      part of iPhone SDK is Cocoa, resonsible mainly for OS user interaction, but XCode is an IDE closely working with iPhone SDK, actually an iPhone software developper can take advantage of iPhone SDK only by means of XCode

      Maybe I should write a post about differences between SDK and IDE 🙂

      It is erroneous to think that I have chosen Symbian as platform for mobile software development. I haven’t written a single line of code for smartphones, I am just interested in mobile technologies and part of the purpose of this blog would be to make a comparative study.
      I have to acknowledge that it is my fault not to publish many posts about other mobile OSes… sorry for this, because can mislead someone reading this blog.
      But my question would be: what would you recommend instead of Symbian? if you’re considering it so miserable
      I have the felling that it is the same as when I discuss with people here in Spain, and they tell me how backworhty their country, but then my question comes: have you lived elsewhere? you are welcomed to go to Romania if you do not like it here 🙂

  4. kellogs says:

    >>Maybe I should write a post about differences between SDK and IDE 🙂

    Err.. maybe not so.

    >>actually an iPhone software developper can take advantage of iPhone SDK only by means of XCode

    Yes, that would be the *offical* point of view. I remember some 2 years ago I was onto picking up iPhoning yeeeey. And I still am as I type. :)) Never got the time / real need to start.. I am actually wondering how the eff can you right pretty damn accurate tutorials on Symbian without having written one line of symbian code.. nice!
    So, the thing is I had at that time 2 options – hackintosh + xcode or cross-platform development. Yes, it is doable just from your Windoze laptop with the right toolchain and other thinggies installed. Oh, and ofcurse, I could have pulled out a noisy sum of money and buy a Mac. Not! Well, I still got my hackintosh – and I like it too, very user friendly.

    Recommended mobile platforms – WM – never get into trouble related to emulator / IDE / ‘capabilities’. Android – it is so damn easy to crank code for this one. As easy as J2ME but has a fully fledged platform – the Android Java Platform.

    • WM?? many people are saying that this is dying and also that Microsoft completely failed to enter consummer electronics market, they wanted to take advantage of the huge potential that Apple created and to come withsome new flavor (I remember that I read somewhere that they choose the OS not to support multitouch screen just not compete with iPhone, instead they adopted the stylus-pen which proved to be quite un-handy, just have a look what this guy is saying about WM’s stylus)

      … and besides this the development tools are quite expensive
      … and besides this … if you’re thinking to sell your WM applications on Windows MarketPlace you really have to reconsider your thoughts

      Android… many are saying that it will be the top mobile platform, the only criticism that I know is that Google does not care so much about it

  5. kellogs says:

    Ok, ok .. I am just a windows developer mainly so WM seemed perfect for me. But regarding multitouch – at least in America, Apple has got a freakin patent over that. Google it. That is why, for instance, The Motorola Droid does not offer multitouch while Motorola Milestone (same smartphone – EU edition) does. Yes, the stylus is just a piece of ****, especially trying to use it in a moving car (moving over our beloved roads :D), but it was there long before iPhone even saw its first internal draft.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: