OS for Symbian OS phones
Symbian OS is a mobile operating system and computing platform designed for smartphones. It was originally developed as a closed source operating system for PDAs in 1998 by Symbian Ltd. This platform was originally a subsequent distribution of EPOC Psion and worked exclusively on ARM processors (although there was also an x86 version).
Symbian has been used by many major mobile phone brands - Samsung, Motorola, Sony Ericsson and, above all, Nokia. As the pioneer in creating the smartphone industry, it was the most popular smartphone operating system until around the end of 2010, that is, at a time when they were in limited use. Then its development overtook the Android OS, since the development from Google quickly reached the mass consumer.
Operating system development
Since 2001, Symbian OS has been a system shell and required an additional user interface (as middleware) to form a complete operating system.It then became self-sufficient thanks to the S60 platform (formerly Series 60), created by Nokia and first released in 2002. Since it was built into most Nokia smartphones, Symbian OS eventually became the most widely used smart mobile operating system.
UIQ was another Symbian user interface, mainly used by Motorola and SonyEricsson, while MOAP also existed in Japan. The applications of these interfaces were not compatible with each other, despite the fact that each of them was built on Symbian OS. Nokia was the majority shareholder of Simbian and acquired its entire stake in 2008. After that, a non-profit Symbian Foundation was created to develop a royalty-free software based on the S60. As a result of this work, Symbian ^ 1 (or S60 5th Edition) was released in 2009. The subsequent distribution kit ^ 2 was used only for NTT DoCoMo media in the Japanese market. Symbian ^ 3 was released in 2010, and by that time it had become a fully open source platform. This version received significant updates in 2011.
The Symbian Foundation collapsed in late 2010, and Nokia regained control of the OS development. In February 2011, Nokia, as the only remaining company that still supports Symbian outside of Japan,announced that as the main platform for smartphones will use Windows Phone 7 from Microsoft. Two months later, the OS was moved to closed licensing. Despite the fact that the platform support was promised until 2016, all developments since 2012 have been developing poorly. In January 2014, Nokia stopped accepting new or modified Symbian software from developers.
Nokia 808 PureView officially became the latest Symbian smartphone from this manufacturer. However, NTT DoCoMo continued to produce OPP (Operator Symbian Symbian, MOAP successor) devices in Japan, which still act as middleware on top of Symbian. Other Symbian OS phones that are widely used today are the F-07F from Fujitsu and SH-07F from Sharp, released in 2014.
Since its inception, Symbian has had its own graphical toolkit, known as AVKON (formerly Series 60). The S60 was designed to be controlled using a keyboard similar to an interface tool (mini-QWERTY). AVKON based software is compatible with binary versions of Symbian, including version ^ 3.
Symbian ^ 3 includes the Qt framework, which is currently the recommended toolkit for new applications.Qt can also be installed on older devices with this OS.
The fourth distribution was planning to introduce a new graphic library specially designed for the touch interface, known as “UI Extensions for Mobile” or UIEMO, which was developed based on QtWidget. The trial version was released in January 2010, but in October of the same year, Nokia announced that Orbit / UIEMO would not enter the market.
What is the situation now?
Currently, Nokia recommends that developers use QtQuick with QML, the new high-level declarative user interface and scripting development environment that allows the development of both Symbian OS and MeeGo. It is available for existing third-generation devices as a Qt update. When in other applications a new user interface gradually appears, the outdated S60 structure (AVKON) is being supplanted and is no longer included in new devices, which violates binary compatibility with older applications for Symbian OS S60.
Symbian ^ 3 and earlier versions have a built-in browser based on WebKit. Symbian was the first mobile platform using this application (in June 2005). Some older (on Symbian OS) phones use Opera Mobile as their default browser.
Subsequently, Nokia released a new browser Symbian Anna with improved speed and improved user interface.
Symbian has powerful localization support, allowing manufacturers and third-party application developers to use their products based on this OS to support global distribution. The current version of Symbian (Belle) supports 48 languages that Nokia makes available on devices in language packs. They all have a common English or locally relevant dialect.
The Symbian OS operating system supports proactive multi-tasking and memory protection, like other operating systems (especially those designed for use on desktops). The EPOC approach to multitasking was derived from VMS and is based on asynchronous server events.
Symbian OS was created taking into account three systems design principles:
- The integrity and security of user data is paramount.
- User time should not be wasted.
- All resources are limited.
To better follow these principles, Symbian uses a microkernel, has an approach to callback services, and supports separation between the user interface and the engine.The OS is optimized for low-power devices on batteries and for ROM-based systems (for example, features such as XIP and re-incorporation into shared libraries). The applications and the OS itself follow an object-oriented design: Model-view-controller (MVC).
Later iterations of the OS diluted this approach in response to market demands, especially with the introduction of the kernel in real-time and platform security models in Symbian OS versions 9.3 and higher.
Special attention is paid to resource conservation, for example, special programming idioms, such as descriptors and stack cleanup. Similar methods exist to save storage space. In addition, all Symbian programming is event based, and the central processing unit (CPU) switches to low-power mode when applications are not directly related to the event. This is done using a software idiom, called active objects. Similarly, the approach of Symbian OS (9.4) to threads and processes is due to reduced overhead costs.
The AllOver model contains the following layers from top to bottom:
- Layer frame user interface.
- Layer application services.
- Java ME.
- OS service level
- OS Shared Services.
- Communication services.
- Multimedia and graphic services.
- Communication services.
- The level of basic services.
- The level of services and kernel hardware interface.
What does this mean?
The level of basic services is the lowest level available for user operations. It includes a file server and user library, a plug-in platform that manages all plug-ins, storage, central repository, database management systems and cryptographic services. It also contains a text box server and a text shell: two basic services from which you can create a fully functional port without the need for any higher level services.
Symbian OS has a microkernel architecture, which means that the minimum necessary is inside the kernel to maximize reliability, availability and responsiveness. It contains a scheduler, memory management, and device drivers, but other services, such as networking, telephony, and file system support, are hosted at the OS or basic services level. The inclusion of device drivers means that the kernel is not a true microkernel.The real-time kernel EKA2, which was called the nano-core, contains only the most primitive positions and requires an extended module to implement any other abstractions.
Symbian is designed to emphasize compatibility with other devices, especially removable media file systems. The early development of EPOC led to FAT becoming an internal file system (and remains to this day), but an object-oriented persistence model was placed on top of the underlying FAT to provide a POSIX-style interface and a streamline model. Internal data formats are based on the same APIs that create data to run all file manipulations. This has led to data dependencies and the associated difficulties with their changes and migration.
There is a large network and communication subsystem that has three main servers: ETEL (EPOC telephony), ESOCK (EPOC sockets) and C32 (responsible for serial communication). Each one has a plug-in schematic. For example, ESOCK allows different “.PRT” protocol modules to implement various network protocols.The subsystem also contains code that supports short lines of communication, such as Bluetooth, IrDA and USB.
Interfaces and their support
There is also a large amount of user interface (UI) code. Symbian OS contained only base classes and a substructure, while most real user interfaces were supported by third parties. This is no longer the case. Three main interfaces - S60, UIQ and MOAP - were introduced to Symbian in 2009. Symbian also contains graphics, text layout and font rendering libraries.
All C ++ native programs for Symbian OS are built from three base classes defined by the application architecture: application, document, and application user interface. These classes create the fundamental behavior of the application. The remaining necessary functions, application representation, model and data interface are created independently and interact exclusively through their API with other classes.
Need for plugins
Many other components do not yet fit into this model - for example, SyncML, Java ME, which provides a different set of APIs on top of most operating systems and multimedia. Many of them are frameworks, and developers are expected to supply plug-ins for them from third parties (for example, HelixPlayer for multimedia codecs).This has the advantage that the APIs for such areas of functionality are the same in many phone models, and that developers also have more flexibility. But at the same time, this means that phone manufacturers have to do a lot of integration work in order to create a functional gadget with Symbian OS.
Symbian includes a help user interface called TechView. It provides the basis for initial setup and is an environment in which many Symbian tests and sample code are run.
Symbian Options and Platforms
Symbian, having advanced to OS version 7.0, was divided into several graphical user interfaces, each of which is supported by a specific company or their group. Unlike different versions of Android OS, Symbian graphical interfaces are called “platforms” because of more significant modifications and integration. Everything became more complicated when applications (including games for Symbian OS games) developed for different GUI platforms became incompatible with each other, which led to OS fragmentation.