SYMBIAN OS Symbian OS is the operating system licensed by the world's leading mobile phone manufacturers.

Symbian OS is designed for the specific requirements of open, data-enabled 2G, 2.5G and 3G mobile phones. Symbian OS is already available in the Ericsson R380, SonyEricsson P800, the Nokia 9200 Communicator series, Nokia 7650 etc« Symbian OS is characterised by: y Integrated multimode mobile telephony ± Symbian OS integrates the power of computing with mobile telephony, bringing advanced data services to the mass market y Open application environment ± Symbian OS enables mobile phones to be a platform for deployment of applications and services (programs and content) developed in a wide range of languages and content formats y Open standards and interoperability ± With a flexible and modular implementation, Symbian OS provides a core set of application programming interfaces (APIs) and technologies that is shared by all Symbian OS phones. Key industry standards are supported y Multi-tasking ± Symbian OS is based on a micro kernel architecture and implements full multi-tasking and threading. System services such as telephony, networking middleware and application engines all run in their own processes y Fully Object-oriented and component based ± The operating system has been designed from the ground up with mobile devices in mind, using advanced OO techniques, leading to a flexible component based architecture

Flexible user interface design ± By enabling flexible graphical user interface design on Symbian OS, Symbian is fostering innovation and is able to offer choice to manufacturers, carriers, enterprises and end-users. Using the same core operating system in different designs also eases application porting for third party developers .

2. MOBILE PHONE CORE PLATFORM Symbian OS is a 32-bit, little-endian operating system. It has been ported to many flavors of ARM architecture chips with V4 instruction set or higher. Further requirements of Symbian OS are for the CPU to have an integrated memory management unit (MMU) and a cache, to operate in various privileged access modes, and to handle interrupts and exceptions. The CPU, MMU and cache along with timers and hardware drivers, all reside on the system-on-chip. These SoCs are often commercially available and are sometimes custom built by handset manufactures. Symbian OS has been ported to many ARM cored system-on-chips. These include the PrimeXSys platform from ARM, the StrongARM and XScale architectures from Intel, the OMAP platform from Texas Instruments and the Dragonball platform from Motorola.


Figure 1: Mobile phone hardware can be divided into three logical layers: the CPU core, the SoC and the PCB. Symbian OS also conforms to this layering. This enables easy porting of Symbian OS as the code for particular CPU core or SoC can be reused in many products. The MMU is used for several purposes. It protects process data from access by other processes, enforces protection of application and kernel code, and isolates the hardware from application code. The MMU is a crucial component in the design of the protected mode system, which enhances both the security and stability of the platform. A standard two-level page tabled MMU allows small 4 KB pages for efficient memory usage, while fast re-mapping speeds can be achieved with large first-level pages of 1 MB. Both data and instruction caches are required to produce acceptable performance. On-chip timers provide the real-time clock for the system tick timer, and millisecond scale timers are needed for use with hardware drivers. While some memory will be available on the chip most will be provided off-chip. This off-chip memory has three major functions: storage of the Symbian OS image; persistence of user data in a file system; and storage of processes' data at runtime. Speed of memory access, cost of the memory chips and persistence of the data must be considered when choosing the memory for each of these three functions. 3. HARDWARE ACCESS The Symbian OS kernel is a compact pre-emptive multitasking operating system with very little dependence on peripherals. The core kernel executable - of less than 200 KB fully supports the multi-threaded operating system. Peripheral hardware integration is added to the kernel in several ways. Hardware support is usually implemented in separate DLLs associated with particular hardware to allow the easy insertion and removal of hardware and to facilitate code reuse. The MMU is configured so that all hardware registers can only be accessed in privileged mode. The kernel always executes in privileged mode and hence has access to all the hardware registers. Applications interface to kernel services through an API provided by the User library.


The kernel library is customized for a particular chip. and device drivers for further peripheral hardware exposed to applications and server. digitizer. Instead applications must link to the User library whose functions may invoke peripheral control through the kernel. There are several software frameworks that support hardware access. the ASIC or SoC) and that is essential to the operating system. The appropriate kernel extensions are added into the image. The peripheral hardware includes such things as timers. KEY FEATURES OF SYMBIAN OS . interrupt controllers and UART serial ports. and one or two libraries. direct kernel access for vital hardware. and navigation button y and wheels. to access the hardware. 4.The kernel library includes support for all peripheral hardware that is resident on the chip (e. keypad. kernel extensions for hardware associated with user input. running in privileged mode. User input simply provides events that are consumed by the kernel. or through the kernel. where the kernel detects their presence at boot time and initializes them. Device drivers can be loaded and unloaded at anytime. The kernel itself has no dependency on the extensions. DMA engines. Applications are not permitted to access peripheral hardware directly. and no kernel extension functionality is accessible to applications. y y y Figure 2: All access to hardware occurs from. Device drivers expose an API to applications to allow control of hardware that is not essential to running the operating system.g. A device driver consists of two parts: a library providing the device's API to which applications can link. Different kernel extensions can be written for keyboard. kernel-side.. Peripherals associated with user input can be packaged as a separate DLL. called a kernel extension.

support is also provided for multihoming capabilities and link layer Quality-of-Service (QoS) on GPRS/UMTS networks Mobile telephony ± Symbian OS v7. playback and streaming. utility and system control. schedule. clipboard and graphics Browsing ± a WAP stack is provided with support for WAP 1. integrated APIs for data management. RUIM and UICC Toolkit. a PC Connectivity framework providing the ability to transfer files and synchronize PIM data . personal area networking support include infrared (IrDA). Infrared and USB. OBEX for exchanging objects such as appointments (using the industry standard vCalendar) and business cards (vCard). CDMA circuit switched voice. internet mail using POP3.0 Data synchronization ± over-the-air (OTA) synchronization support using SyncML. messaging. attachments.Symbian OS provides a rich core of application programming interfaces that are common to all Symbian OS phones. IMAP4. Key features of Symbian OS are: y y y Rich suite of application engines ± the suite includes engines for contacts. Bluetooth. cdma2000 1x. data and packet-based data (IS-95. browsing. SMTP and MHTML. graphics accelerator API Communications protocols ± wide-area networking stacks including TCP/IP (dual mode IPv4/v6) and WAP. fax y y y y y y Multimedia ± audio and video support for recording.1 for mobile browsing Messaging ± multimedia messaging (MMS). Other standards can be implemented by licensees through extensible APIs of the telephony subsystem International support ± conforms to the Unicode Standard version 3. Bluetooth and USB. PC-based synchronization over serial. text.2. and WCDMA). SIM. enhanced messaging (EMS) and SMS. image conversion Graphics ± direct access to screen and keyboard for high performance.0s is ready for the 3G market with support for GSM circuit switched voice and data (CSD and EDGE ECSD) and packet-based data (GPRS and EDGE EGPRS).

information about the current network. terminate and answer data calls including HSCSD. EDGE. call barring. voice. data and fax. write. Pass the control of serial port to communication protocols to stream data the abstraction supports a wide variety of ETSI GSM phase 2+ functionality supplementary services supported include: Alternative Line Service (ALS). call waiting. GPRS. receive notifications when there are network registration changes and retrieve the phone identity information y phonebook: read. and WAP.Security ± full encryption and certificate management.0 and PersonalJava 1. retrieve NITZ time information. GPRS and EDGE conforms to the 3GPP GSM Phase 2+ (releases R97/98). setting up Closed User . Main features are: y y y y voice calls: initiate.1a (with JavaPhone 1. secure protocols (HTTPS.1. call forwarding.1. 0-9*# (numeric mobile phone keypad). Java (J2ME) MIDP 2. search and delete access to the phonebook storage areas of the phone and SIM (GSM 11.0 option). terminate and answer voice calls circuit-switched data calls: initiate. and voice and fax). Functionality common to all networks includes: y phone and network information: retrieve signal and battery strengths. The abstract cellular networks include GSM. Alternating Call Services (between voice and data. 5. The multimode telephony abstraction is key in Symbian OS to providing integration with the rest of the operating system to enable creation of advanced data services. WTLS and SSL and TLS). and for landline modems for data and fax as well as phone number resolution and SIM Application Toolkit. handwriting recognition and predictive text input. tools are available for building C++ and Java applications and ROMs with support for on-target debugging y User Inputs ± generic input mechanism supporting full keyboard. GSM/EDGE telephony Support for GSM.1 GSM The GSM telephony framework provides an abstract telephony interface for GSM voice. TELEPHONY y The Telephony subsystem provides a multimode API to its clients. Called/Calling Party Identity Presentation (CLIP) and Restriction (CLIR). provide access to the network names detected by the phone. WIM framework and certificate-based application installation y Developing for Symbian OS ± content development options include: C++. 5.11) or R-UIM (cdma2000 1x) y both one-box and two-box configurations are supported y phonebook synchronizer: mechanism to synchronize phonebook entries stored on a SIM or R-UIM card to the contact database so that clients can access all contact data via the contacts model API. CDMA (IS-95) and cdma2000 1x (Release A). 5.1.

With class B functionality.2 GPRS The General Packet Radio Service (GPRS) framework provides an abstract telephony interface for GPRS class B functionality. GPRS services are automatically suspended and resumed. conference call. change in the current state of a GPRS connection and general PDP contexts parameters.2. main features are: y supports EDGE enhanced CSD (ECSD) y supports EDGE enhanced GPRS (EGPRS). The main features are: y y y y y attachment and detachment from the GPRS network activation and deactivation of a Packet Data Protocol (PDP) context for data transfer ability to activate and deactivate the PDP context automatically with no explicit client intervention ability to automatically suspend a GPRS data connection when an incoming or outgoing GSM voice call is made. 5. charging information. 5.Group (CUG) call.3 EDGE The Enhanced Data-rates for Global Evolution (EDGE) framework provides an abstract telephony interface for 3GPP GSM/EDGE. message waiting identification. terminate and answer voice calls circuit-switched data: support for service options: asynchronous data and fax for both rate Set 1 and rate Set 2 packet-switched data: support for service options: CDPD for both rate Set 1 and rate Set 2 text messaging (SMS): SMS support is provided by an abstraction of the interface between the SMS teleservice layer and the SMS transport layer (IS-637) operation in AMPS (Voice only) networks forward compatibility with cdma2000 networks .2. current GPRS network availability. data (circuit. User-User signalling (UUS). network service requests (USSD).1. 5.and packet-switched) and fax. Main features are: y y y y y y voice calls: initiate. CDMA telephony 5.1. and to resume a suspended GPRS data connection on notification from the GPRS network information and notification service to the client software of network information such as GPRS capabilities. phones are able to make and receive GSM calls while simultaneously remaining registered with GPRS. If a Packet Data Protocol context is active.1 CDMA The CDMA telephony framework provides an abstract telephony interface for CDMA (IS-95) voice. In addition to supporting the GSM and GPRS functionality described above.

Plug-in protocols are dynamically loaded y a network interface manager which provides a framework for connection to other computers or networks.2 cdma2000 1x The 3GPP2 cdma2000 1x telephony framework provides an abstract telephony interface for 3GPP2 cdma2000 1x (Release A) voice.1 Networking A dual stack is provided that supports both IPv4 and IPv6. The manager provides a mechanism for the client to monitor progress over e. 34 for high speed packet data Removable-User Identity Module (R-UIM): support access to R-UIM files such as phonebook entries and stored SMS messages phonebook synchronizer: mechanism to synchronize phonebook entries stored on a SIM or R-UIM card to the contact database so that clients can access all contact data via the contacts model API. COMMUNICATION INFRASTRUCTURE The Common Infrastructure subsystem provides the key frameworks and system services for communications and networking. 6. The TCP/IP stack provides a plug-in architecture. This includes: y a communications database manager which controls the system-wide communications configuration y a socket server and client-side API which provides a framework for implementing various communications protocols through a socket interface. In addition to the functionality of CDMA (IS-95) described above. data (circuit. Networking support in Symbian OS includes: y Transmission Control Protocol (TCP) y User Datagram Protocol (UDP) IPv4/v6 stack..2. 6.and packet-switched) and fax. 33. main features are: y y y y circuit-switched data: support for IS-95B services packet-switched data: support for IS-95B services plus service options 22-29. a PPP connection y a serial communications server provides a serial port (RS232C) abstraction to allow Symbian OS phones to function as a DCE and a DTE as required.g. Plug-ins can interact with OSI level 2. 3 and 4 components and can be installed. Dynamically loadable plug-in communications modules are used to actually communicate with device drivers and other protocol stacks.5. loaded and unloaded at y . y HTTP and WAP stacks.

WAP stack The WAP stack subsystem includes support for WAP 1. IP-based Symbian OS clients such as email.2. has the following layers: y WSP.1 Client stack with support for persistent connections. CDMA and cdma2000 1x for connection-oriented browsing. specific protocol details or the underlying transport layer. OCSP. transport layer security protocol for WAP y WDP. 6. and chunked transfer encoding. datagram protocol for WAP. GSM CSD.2. pipelining. Web Based Application Installation.1 HTTP client stack HTTP 1. high level API that is independent of particular header representations. This stack can also be used by Third Parties for applications such as Web Browsing. GPRS UDP. The framework allows for extension and customization at an application or platform level by the use of filter plug-ins.2. 6. Enables applications such as SyncML. SyncML over HTTP and web can use IPv6 addressing as well as IPv4 addressing: o Internet Control Message Protocol (ICMP) o Point to Point Protocol (PPP) o Domain Name System (DNS) o dial up networking support o security protocols for secure electronic commerce: Transport Layer Security (TLS) and Secure Sockets Layer (SSL) o File Transfer Protocol (FTP) engine o Ethernet support: wired interface (PCMCIA cards for WINS and on-board Ethernet chip for development board) supports 10BaseT and 100BaseTX in full or half duplex.runtime.2. HTTP. Java MIDP. This framework is used as the interface to HTTP and WSP protocols.3 . The WAP 1. session protocol for WAP y WTP.1 and 1. Support for Slow IR. push functionality and GPRS as a bearer. The WAP stack supports the following bearers: GSM CSD.1 (WAP June 2000). GSM SMS and GPRS SMS for connectionless push. client and server y a WAP push watcher which listens for secure and non-secure push messages received using connectionless mode over all supported bearers .1.0 and 1. The WAP stack supports protocol specifications version 1. HTTP transport framework Symbian provides a generalized framework for Internet applications to use HTTP like protocols.2.1 class C of the WAP Forum in connection-oriented mode. 6. SSL. GPRS UDP. The framework presents a unified. transaction protocol for WAP y WTLS. Wireless interface (IrLAN).

The framework is open. pre-defined picture: 16 x 16.2. operator logo.040) and supports the following features: y mobile originated pictures: variable picture. ring tone. Receive messages that match a specified text 7-bit SMS alphabet.40) SMS protocol is provided the GSM SMS stack can be used as a bearer for the WAP protocol module transmission and reception of GPRS SMS SMS: send and receive streamed SMS messages. 7. vCalendar. Enhanced Messaging Service (EMS) EMS support in Symbian OS is compliant with 3GPP release 4 (TS 23. 7.7.1. Specify and review scheduled actions. The vCard and vCalendar BIO message file types are also supported over infrared and Bluetooth links. for instance via SMS. BIO messaging uses a watcher framework to support messages sent over-the-air to the operating system or application rather than to the end-user. Enumerate. pre-defined picture: 32 x 32 y mobile terminated pictures: variable pictures (1024x1 to 8x128). MMS and email.3. Main features of Messaging are: 7. and settings for internet access. 8-bit SMS alphabet and UCS2 data coding schemes are supported supports sending and receiving concatenated SMS messages scheduled sending: on a specific date/time. Short Message Service (SMS) SMS support consists of an SMS stack with a messaging API to send and receive SMS and provides the following features: y y y y y y y the SMS stack is implemented as a plug-in protocol. MMS and WAP. enhanced messages (EMS). write and delete access to the SMS storage areas of the phone and SIM. Bearer Independent Object Messaging Bearer Independent Object (BIO) Messaging allows application to application communication of arbitrary data types between devices. BIO message types currently supported include compact business card. email and fax messages. vCard. ³now´ or upon request. multimedia messages (MMS). MESSAGING The messaging framework provides support for messaging protocols for sending and receiving of text messages (SMS). read. allowing third parties to add further capabilities and value at run-time. email notification. small pictures 16 x 16 and large pictures 32 x 32 . The GSM (03.

y y y y y 7. Multiple IAPs. right). multiple SMTP connections with multiple send sessions). From.1 Push or over HTTP by a similar push mechanism parameters supported include: Message-Type. automatic MIME character set conversion. black & white animations and mobile terminated user-defined animation Sounds: iMelody formatting: both mobile originated and terminated formatting. text style (bold. secure socket connections: facility to establish a TLS socket connection to email servers.0.30 specification y multiple recipient outgoing faxes y ITU T. both GPRS and GSM CSD. Fax supports the following features: y fax class 1. Response-Status and Response-Text both Internet and MSIDSN addressing are supported. strikethrough. large). ContentType. Fax The fax system interfaces to the messaging fax components at its upper boundary and to fax devices at its lower boundary. separate emails for Bcc: send email for specific SMTP servers via specific ISP accounts.2. can be associated with each email MTM to specify whether the default preferred connection or a specific connection should be used. medium. Priority. Multimedia Messaging Service (MMS) MMS operates over CSD and GPRS and provides the following features: both WSP and HTTP transports are supported.4 1D and 2D-encoding . center. single operation getnew-mail for both POP3 and IMAP4. MMS-Version. Messages are received over WSP Get or HTTP Get. automatic receipt notification. 7. including mixed addressing message presentation is through SMIL 3GPP R5 (PSS 5). Delivery-Report. Message-Class (only personal). Bcc. Cc. Email Email has the following main features: y Internet mail: supports disconnected mode. underline. and sent using WSP Post or HTTP Post message notification is received over WAP 1. cache management.0 (ANSI/TIA/EIA 578 and ANSI/TIA/EIA 592). To.6. 2 and 2.5. MHTML. SMTP client enhancements (copy-to-self. conforms to the ITU T. automatic email signature (or vCard). text size (small. It is also possible to receive messages based on SMIL 1. Date. UUE and MIME.y y y animations: pre-defined animations (multiple separate animations). italic) and message alignment (left. Character set conversion takes place during sending or receiving messages y y Internet access points (IAP): connection over GPRS is supported as well as over GSM CSD. 7.4. Expiry. Subject.

descriptor and microphone source plug-ins. audio i/o. The framework allows developers to write efficient and powerful plug-ins. playback and streaming.10 etc.y scheduling of sending: on a specific date. file. . Specify and review scheduled actions. audio recording. multi-threaded framework for handling multimedia data. now or upon request. Support is provided for video recording. a codec API is provided and the framework supports codec plug-ins y audio Controller plug-in. MULTIMEDIA FRAMEWORK The Multimedia Framework (MMF) provides a lightweight. uLaw. and file. RAW (in various formats). Concrete classes include files. and video i/o y the audio framework provides commonly used functionality including audio playback. formats supported include WAV. AU. The main features are: y generic multimedia plug-in system: plug-ins can be written using abstract and concrete classes that represent actual resources and abstract components. descriptors. GSM6. PCM. descriptor and speaker sink plug-ins y sound device abstraction and arbitration y video playback/recording/telephony framework y MIDI client API y concurrent processing of multiple multimedia data streams. audio streaming and image related functionality. audio streaming and audio conversion. The framework provides audio recording and playback. aLaw.. 8. sockets.

Third party plug-ins are enabled through the extensible nature of the framework. WMF and ICO. PNG. SMS. WBMP. MBM. . BMP.Image Conversion Library (ICL) The image conversion library is a lightweight. client-side framework for still image codecs and conversion. TIFF. GIF. Camera support An onboard camera API providing a consistent interface to basic camera functions. Plug-ins supplied by Symbian include JPEG. optionally multithreaded.

WBMP. contacts. BMP. caller number matching receive a vCard (supports Versit vCard 2. GIF. Camera support An onboard camera API providing a consistent interface to basic camera functions. support . to-do. APPLICATION ENGINES The core application engines include agenda (schedule). alarm and world servers and the help engine. integrates with messaging application for emails. spreadsheet. Plug-ins supplied by Symbian include JPEG. PNG.Image Conversion Library (ICL) The image conversion library is a lightweight. WMF and ICO.1 standard). 9. vCalendar support with send and receive functionality. SMS. client-side framework for still image codecs and conversion. TIFF. optionally multithreaded. Third party plug-ins are enabled through the extensible nature of the framework. group support. MBM. synchronization with PIM applications using Symbian Connect y to-do engine: integrated with the agenda engine for storing agenda type entries y contacts model: provides a generic client-server shared access contacts database engine. Main features are: y agenda engine: provides client-server shared access. faxes and SMSs.

. graphics and text support. current item support. formula evaluation and charts. . 10. rich text formatting for cells. and a control framework for sharing an application window between application components y direct navigation link (DNL) system enables close task-based integration between applications y a mechanism for the licensee to customize the look and feel (LAF) of the GUI. This eases the porting of the user interface of applications between different Symbian OS phones. licensees. clocks and animated bitmaps. partners and third parties to run seamlessly on open Symbian OS phones. many general. added a power function chart engine: renders the graphics for a chart view of a spreadsheet application help engine: context sensitive help engine consisting of four parts. APPLICATION FRAMEWORK The Application framework subsystem provides a powerful environment for licensees and partners to create differentiated user interfaces while enabling applications written in C++ and Java. and back again. Main features of the GUI framework: y an event-driven GUI and widget architecture y a windowing system for sharing screen. and incremental facilities for use by the PC-based help file authoring system client text to Symbian OS Word converter: provides conversion between plain text and a Symbian OS Word model stream. scientific. y a plug-in mechanism for the user to input non-standard data (e.1. borders and shading. by Symbian. It includes a number of system-wide plug-in mechanisms for instantiating components at run-time. support for extensible field types.y y y y for multiple templates. connectivity requirements. This subsystem is architecturally central to the support of graphical user interface (GUI) applications. for ideogram input or voice recognition for phones that may not have a keyboard) y control factory structure allows the framework to be extended by multiple applications y a notifier framework allowing system events and alarms to be handled more flexibly by the GUI y a flexible screen indicator and status bar framework y runtime changeable color schemes y bitmap animation performed in the Window Server thread. Graphical user interface (GUI) framework A principal objective of the graphical user interface (GUI) framework is to define as little policy as possible and therefore minimize the constraints placed on a product's UI designer. a launching mechanism. financial and statistical functions. searching and filtering by contact item type sheet engine: spreadsheet support for multiple worksheets. keyboard and pointer between applications. powerful reusable libraries for data.g. the model (which describes the database to its clients). 10. the SQL search engine (capable of relational-like searches across all the tables in the database).

FEPs can take the form of a floating window. Thai and Japanese locales y a front-end processor (FEP) framework for text input using handwriting recognition or keyboard to enable input of far eastern ideographic characters.2. deletion and clipboard operations. to do ³inline editing´ y conversion between Unicode and other character sets. e.10. Application support services The application services are composed of components.0 y a framework to support European. via a plug-in mechanism y Support for rendering and editing bi-directional text. This enables to run services or applications from any application in the system support for PC-style changeable color schemes in editable text and for auto-sizing text editors background images: arbitrary graphics can be drawn behind text. embedded graphics. including embedded objects generic support for plug-in parsers that recognize certain strings. Arabic. phone numbers. or a ³transparent window´. and a text view which supports efficient formatting. Chinese. and a rich text undo system that can cope with anything a rich text object can do. display and interaction two multi-level undo/redo capabilities: a plain text undo system that can undo text insertion. world country and city information database y calendar conversion between the Gregorian and the Chinese calendars y support for Eastern-Asian character sets in vCard and vCalendar 10. Support for drawing bi-directional text to graphics objects. email addresses. with control of parameters like transparency and background scrolling. y system agent: a general repository for system wide dynamic state informationlog engine: recording the use of any on-board devices (especially the phone) y alarm server: alarm persistence. y y y y y . primarily used by application engines.g. eg URLs. 10. providing a text model with character and paragraph formatting. that provide core services: y task scheduler: schedules launching of applications or initiation of specific application features.3 Internationalization support The main internationalization features are: y conforms to the Unicode Standard version 3. They can also interact closely with their target controls. Hebrew. or be invisible.4 Various text and graphical utilities Main other Application Framework features and utilities: rich text rendering for various locales. sound playing y world server: country codes.

and for the CDC ACM class. The kernel implements a messagepassing framework for the benefit of user-side servers (such as the networking and telephony . The Base ensures Symbian OS robustness. unprivileged) processes.11.0 digital camera picture infrared transfer protocol y IrCOMM v1. USB class support is provided for the WMCDC WHCM and OBEX class.6 KBPS to 115.1. 12. USB and infrared (IrDA).2 (IrDA object exchange) y IrTRANP v1. All classes are controlled by a USB Manager component. The OBEX implementation provides an OBEX v1. performance and efficient power management . implements the scheduling policy. The Host Controller Interface (HCI) provides a hardware interface via a UART based reference implementation.1 protocol stack along with full Generic Access Profile (GAP). All USB support is provided ultimately by a USB v1.all essential in a mobile phone.1. It runs natively on ARM cores. IrLMP v1. owns device drivers. BASE The Base subsystem provides the programming framework for all other components of Symbian OS. The following features are supported: y infrared (SIR) supporting throughputs of 9.2 KBPS y IrOBEX v1. The infrared message type module integrates IrOBEX handling into the messaging framework.1 client driver. 12. The OBEX server also provides USB support. Generic Object Exchange Profile (GOEP) and Serial Port Profile implementations.2 client and server that operate over Bluetooth and IrDA. Bluetooth support is provided with a core Bluetooth 1.0 supports fax/modem functionality and is implemented in a serial communications server module.1 and IrTinyTP v1. does power management and allocates memory to itself and user-mode (that is.1. Kernel and user library The kernel runs in privileged mode. PAN CONNECTIVITY Personal Area Networking connectivity is available through support of Bluetooth. Base provides an abstraction to facilitate design across multiple platforms and resources making it easier to port Symbian OS to new types of hardware. The main user-visible parts of the base are the user library and the file server. The infrared IrDA stack is contained in a socket server protocol module that implements the following IrDA layers: IrLAP v1.

program and memory management y error handling and cleanup framework y descriptors: strings of characters and buffers of binary data y container classes: arrays and lists y active objects.stacks and the file system). and delivers considerably enhanced Java performance y a hardware abstraction layer (HAL) presenting a consistent interface to hardware across all devices y a kernel-side power model. The majority of these are split into a logical layer component implementing the higher layer functionality common to all devices of that device type together with a physical layer component implementing the hardware specific functionality. for simple and efficient inter-process communication. 12. and controlled access to the kernel. time and date formatting y internal and tightly-coupled RAM support y the kernel can be extended by the use of DLLs (such as device drivers and kernel extensions) that can link dynamically against the kernel. The user library is the lowest-level user-mode code.2. The client-server architecture supports both thread-relative and process-relative client resource ownership. Here are the main features: y process. Device drivers The Base subsystem provides device drivers and/or software controllers for the following devices: y DTE serial port y DCE serial port y infrared y HWA (Driver implementing the hardware acceleration API for managing DSP hardware) y USB client y PC Cards y MultiMediaCards (including support for password protected cards) y SD Memory Cards y y y LCD Keyboard Digitizer.3. File server . which offers library functions to user-mode code. thread. to allow fine-grained power management y silent running mode: device can operate with screen switched off locale support including currency. The latter is to ease porting of code written for other platforms to Symbian OS. 12. for event-driven multi-tasking without requiring the overheads of multithreading y client-server architecture.

a client-server implementation for when multiple clients must have write access to a database. such as WIM modules. integrity and authentication by providing underlying support for secure communications protocols such as TLS/SSL. SHA1 and HMAC pseudo-random number generator for generating cryptographic keys. Cryptography module The cryptography module includes the following significant components: cryptography algorithms allowing data to be encrypted and decrypted and supporting symmetric ciphers: DES.2.g. It also supports the authentication of installable software using digital signatures. Here are the main ones: y y the C standard library a relational database access API. Two DBMS implementations are provided: a small and relatively lightweight client-side implementation. y a stream store that defines two major abstractions: streams (an abstract interface to convert between an object's internal and external representations) and stores (an abstract interface to manipulate a network of streams). whether . y y y 13. 13. 12. with physical storage of files associated with each filing system. 13.The File server provides shared access to the filing systems. and asymmetric ciphers: RSA. entries changing in given directory. and. WTLS and IPSec. in a flexible manner.. Cryptography token framework The cryptographic token framework enables licensees to integrate support for removable hardware devices. Main features: y file system drivers can be added when required without having to reboot y clients can register for notification of file-server events. for example. a client-side interface that hides the client-server architecture and a framework for dynamically mounting plug-in file systems. SECURITY The security subsystem enables data confidentiality. Standard library Base also contains middleware widely used across Symbian OS.4. DSA and DH hash functions: MD5. It consists of two parts: y a framework which enables application code to query the system for the availability of implementations of specific cryptographic interfaces and their attributes (e. 3DES. RC2.1. changing disk or disk space crossing a specified threshold y the VFAT file system supports a 'rugged' mode of operation which provides improved data integrity in machine power loss situations. RC4 and RC5.

whether they are removable. whether they implement their own access control mechanism) y the definition of a set of cryptographic interfaces. including authentication of software components using digital signatures to provide a measure of confidence that applications being installed onto a Symbian OS phone are from a known reputable vendor installation of Java MIDP 2. Symbian OS is natively IP-based. and then certificates stored on the WIM will be visible in the certificate management application and available to the certificate validation module). 13.0 MIDlets. Licensees may supply their own implementations of any of the defined interfaces and these will be picked up by applications using the framework (so for example they may provide a WIM implementation which implements the certificate storage interface. Certificate Management module The certificate management module is used for authentication of other entities (e. y y y y 14.they are implemented in hardware.4.g. CONCLUSION Symbian OS is a robust multi-tasking operating system. This module provides the following services: y storage and retrieval of certificates using the cryptographic token framework y assignment of trust status to a certificate on an application-by-application basis y certificate chain construction and validation y verification of trust of a certificate y certificate revocation checking using the Online Certificate Status Protocol (OCSP). and for authentication of the user of the phone.0 MIDlets. allowing the installation package creator to ensure the correct software is installed onto an appropriate phone. 13.3. with fully integrated communications and messaging. It supports all the leading industry standards that will be essential for this . web servers) to the user of the phone. The MIDP OTA recommended practice document is fully supported compression of install packages to reduce disk space and download times. The compression library is a generic shareable DLL which can be called by other applications different varieties of phones. The installation tool supports: y installation of C++ executables. designed specifically for real-world wireless environments and the constraints of mobile phones (including limited amount of memory). Software installation The software installation system provides a secure and fast installation process. third-party developers. including authentication of MIDlets using digital signatures installation of Java MIDP 1.

. Symbian OS enables a large community of developers.generation of data-enabled mobile phones. The open platform allows the installation of third party software to further enhance the platform.