Symbian

[17][18] Two months later, Nokia moved the OS to proprietary licensing, only collaborating with the Japanese OEMs[19] and later outsourced Symbian development to Accenture.

They include S60 (Nokia, Samsung and LG), UIQ (Sony Ericsson and Motorola) and MOAP(S) (Japanese only such as Fujitsu, Sharp etc.).

By contrast, iPhone OS (renamed iOS in 2010) and Android had comparatively simpler design, provided easier and much more centralized infrastructure to create and obtain third-party apps, offered certain developer tools and programming languages with a manageable level of complexity, and having abilities such as multitasking and graphics to meet future consumer demands.

Although Symbian was difficult to program for, this issue could be worked around by creating Java Mobile Edition apps, ostensibly under a "write once, run anywhere" slogan.

This was accomplished on 4 February 2010; the Symbian Foundation reported this event to be the largest codebase moved to Free software in history.

[35] By 5 April 2011, Nokia ceased to make free any portion of the Symbian software and reduced its collaboration to a small group of preselected partners in Japan.

Symbian^4 was planned to introduce a new GUI library framework specifically designed for a touch-based interface, known as "UI Extensions for Mobile" or UIEMO (internal project name "Orbit"), which was built on top of Qt Widget; a preview was released in January 2010, however in October 2010 Nokia announced that Orbit/UIEMO had been cancelled.

It is possible that the techniques, developed for the much more restricted mobile hardware and compilers of the 1990s, caused extra complexity in source code because programmers are required to concentrate on low-level details instead of more application-specific features.

Symbian devices can also be programmed using Python, Java ME, Flash Lite, Ruby, .NET, Web Runtime (WRT) Widgets and Standard C/C++.

(As of 18 January 2010, RedFiveLabs has ceased development of Net60 with this announcement on their landing page: "At this stage we are pursuing some options to sell the IP so that Net60 may continue to have a future.")

By grouping related packages by themes, the Symbian Foundation hopes to encourage a strong community to form around them and to generate discussion and review.

[56] The real-time kernel has a microkernel architecture containing only the minimum, most basic primitives and functionality, for maximum robustness, availability and responsiveness.

The OS is optimised for low-power battery-based devices and for read-only memory (ROM)-based systems (e.g. features like XIP and re-entrancy in shared libraries).

Later OS iterations diluted this approach in response to market demands, notably with the introduction of a real-time kernel and a platform security model in versions 8 and 9.

Further, all Symbian programming is event-based, and the central processing unit (CPU) is switched into a low power mode when applications are not directly dealing with an event.

The All over Model contains the following layers, from top to bottom: The Base Services Layer is the lowest level reachable by user-side operations; it includes the File Server and User Library, a Plug-In Framework which manages all plug-ins, Store, Central Repository, DBMS and cryptographic services.

Things became more complicated when applications developed for different Symbian GUI platforms were not compatible with each other, and this led to OS fragmentation.

[88] Over the course of 2009–10, Motorola, Samsung, LG, and Sony Ericsson announced their withdrawal from Symbian in favour of alternative platforms including Google's Android, Microsoft's Windows Phone.

[93] The users of Symbian in the countries with non-Latin alphabets (such as Russia, Ukraine and others) have been criticizing the complicated method of language switching for many years.

All other mobile operating systems, as well as Nokia's S40 phones, enable switching between two initially selected languages by one click or a single gesture.

Early versions of the firmware for the original Nokia N97, running on Symbian^1/Series 60 5th Edition have been heavily criticized as buggy (also contributed by the low amount of RAM installed in the phone).

However, with a view that the average mobile phone user shouldn't have to worry about security, Symbian OS 9.x adopted a Unix-style capability model (permissions per process, not per object).

Installed software is theoretically unable to do damaging things (such as costing the user money by sending network data) without being digitally signed – thus making it traceable.

However, the set of available features does not include access to Bluetooth, IrDA, GSM CellID, voice calls, GPS and few others.

[102] EPOC16 featured a primarily monochrome, keyboard-operated graphical interface[103] – the hardware for which it was designed originally had pointer input in the form of a digitiser panel.

EPOC32 was a pre-emptive multitasking, single user operating system with memory protection, which encourages the application developer to separate their program into an engine and an interface.

Notably, several never-released Psion prototypes for next generation PDAs, including a Bluetooth Revo successor codenamed Conan, were using ER5u.

DFRD was abandoned by Symbian in late 2002, as part of an active retreat from UI development in favour of headless delivery.

Pearl was given to Nokia, Quartz development was spun off as UIQ Technology AB, and work with Japanese firms was quickly folded into the MOAP standard.

Also included were new APIs to support CDMA, 3G, two-way data streaming, DVB-H, and OpenGL ES with vector graphics and direct screen access.

Logo of the Symbian Foundation
Symbian S60 5th edition on a Samsung Omnia HD
Symbian v9.1 with a S60v 3 interface, on a Nokia E61