You are on page 1of 30

A Seminar Report On SYMBIAN OPERATING SYSTEMS

Submitted in partial fulfillment of the requirements for the award of the degree of Master of Computer Application

Guide: Ms. Nitasha Rathore


(Assistant professor)

Submitted by:
VARUN SHARMA Enroll.No:06413304411

HMR Institute of Information Technology and Management Guru Gobind Singh Indraprastha University (2011-2014)

ACKNOWLEDGEMENT

It gives us immense pleasure in acknowledging my guide who has helped in the successful completion of this Seminar Report. So we want to give all a word of thanks. I sincerely thank to Ms. NITASHA RATHORE & our faculty members for her sufficient help for completing this Seminar Report in the present form with her kind cooperation and timely supervision during the preparation of the report. A report of such a comprehensive coverage would not have been prepared without the help of other numerous sources.

Date: 19-Nov-2011

VARUN SHARMA MCA (1st sem) Enroll. No. - 06413304411 Email ID- varun.sharma9911@gmail.com

ABSTRACT

SYMBIAN OS is the advanced, open operating system licensed by many of the worlds leading mobile phone manufacturers. It is designed specifically for the requirements of advanced mobile phones. Symbian OS is the world-leading open operating system that powers the most popular and advanced smart phones from the worlds leading handset manufacturers. Symbian OS is the industry's standard choice for smart phones that not only feature calendars, contacts, messaging, push email and web browsing, but can also extend easily to any enterprise information system. Symbian OS includes multitasking kernel, integrated telephony support, communication protocols, data management, graphics support, a low level graphical user interface and a variety of application engines.

TABLES OF CONTENTS

Chapter

Page No.

Title Page. ...i Acknowledgement......ii Abstract.......iii Table of Contentsiv Introduction.v Version History...vi Symbian Architecture..vii Features...viii Application Developmentix Criticisms.x Nokia Software Updater..xi Updates Available For..xii References.xiii Conclusion....xiv

INTRODUCTION

SYMBIAN is a mobile operating system (OS) and computing platform designed for smartphones and currently maintained by Accenture. The Symbian platform is the successor to Symbian OS and Nokia Series 60; unlike Symbian OS, which needed an additional user interface system, Symbian includes a user interface component based on S60 5th Edition. The latest version, Symbian^3, was officially released in Q4 2010, first used in the Nokia N8. In May 2011 an update, Symbian Anna, was officially announced, followed by Symbian Belle in August 2011. Symbian OS was originally developed by Symbian Ltd. It is a descendant of Psion's EPOC and runs exclusively on ARM processors, although an unreleased x86 port existed. In June 22, 2011 Nokia has made an agreement with Accenture as an outsourcing program. Accenture will provide Symbian based software development and support services to Nokia through 2016 and about 2,800 Nokia employees will be Accenture employees at early October 2011.The transfer was completed on September 30, 2011.

VERSION HISTORY

Psion founded by David Potter inn 1980 launched the Psion Organizer, the world's first volume-produced handheld computer in 1984. In 1991 Psion introduces the EPOC OS (Electronic Piece Of Cheese, according to the legend). In 1997 Psion Series 5 - the first EPOC32 (32-bit) palmtop. June 1998 Symbian is established as a private independent company and is owned by Ericsson, Nokia, Motorola and Psion. From this point onwards has EPOC OS been called Symbian OS. 2000 September - Symbian ships Version 6 of its software platform to licensees. November - The world's first Symbian OS phone, the Ericsson R380 Smartphone, ships. 2001 June - The world's first open Symbian OS phone became available - the Nokia 9210 Communicator. November Nokia introduces the Series 60 - a licensable UI for Symbian. The first 2.5G Symbian OS phone, the Nokia 7650, is announced. The 7650 is the first massmarket Symbian phone and it is based on the Nokia series 60 reference design.

2002 February - Symbian announces UIQ user interface application for Symbian OS. October - Samsung licenses Symbian OS for smartphones. Worlds top five mobile phone manufacturers now Symbian OS licensees. December - Fujitsu has completed development of a Symbian OS smartphone for NTT DoCoMo's FOMA 3G network - The F2051. 2003 April - Symbian launches Symbian OS v7.0s at Exposium03. October - Nokia announces the first "Media" phone, the TV-enabled 7700, based on the new "Series 90". 2004 February - Symbian OS v8.0 is announced. March - Symbian leads smartphone market. February 2005 - Symbian OS v9 is announced. The Nokia N8 smartphone is the first device to run on the Symbian^3 mobile operating system. Symbian releases are styled Symbian^1, Symbian^2 etc. (vocalised as "Symbian one", "Symbian two").

Symbian^1, being the first release, forms the basis for the platform. It incorporates Symbian OS and S60 5th Edition (which is built on Symbian OS 9.4) and thus it was not made available in open source.

Symbian^2 was the first royalty-free version of Symbian. While portions of Symbian^2 are EPL licensed, most of the source code is under the proprietary SFL license and available only to members of the Symbian Foundation. On June 1, 2010, a number of Japanese companies including DoCoMo and Sharp announced smartphones using Symbian^2. Symbian^3 was announced on 15 February 2010.It was designed to be a more next generation smartphone platform. The Symbian^3 release introduced new features like a new 2D and 3D graphics architecture, UI improvements, and support for external displays via HDMI .It has single tap menus and up to three customizable homescreens. The Symbian^3 SDK (Software Development Kit) was released September 2010. Eleven smartphones with the Symbian^3 operating system (or its updated Anna and Belle variants) have been released so far; the Nokia N8, Nokia C6-01, Nokia E7-00, Nokia C7-00, Nokia E6, Nokia X7, Nokia 500, Nokia 600, Nokia 603, Nokia 700, and Nokia 701. Symbian^4 was expected to be released in the first half of 2011. However, Nokia announced in October 2010 that Symbian^4 will not ship in a separate release. Instead, many of the UI enhancements planned for Symbian^4 will be released as updates to Symbian^3. Symbian Anna is an update to Symbian^3, released by Nokia in April 2011 as part of the launch of the X7 and E6 smartphones. Symbian Anna includes such improvements as a new browser, a virtual keyboard in portrait orientation, new icons and real-time homescreen scrolling.[8] On August 18, 2011, Nokia made the Symbian Anna update available for owners of the N8, E7, C7 and C6-01 models as a software update (via OTA update and the Nokia Software Updater/Nokia Ovi Suite PC applications).

Symbian Belle is an update to Symbian Anna. In the summer of 2011 videos showing an early leaked version of Belle running on a Nokia N8 were published on YouTube. On August 24, 2011, Nokia announced Belle officially for four new smartphones, the Nokia 600, Nokia 603, Nokia 700, and Nokia 701. They also announced that Belle would be coming to all existing Symbian^3 devices in the fourth quarter of 2011. Symbian Belle adds to the Anna improvements with a pulldown status/notification bar, deeper near field communication integration, freeform re-sizable homescreen widgets, and six homescreens instead of the previous three.

Nokia presented the next generation of Symbian releases to a limited audience on the Nokia Developer Day in November 2011, held in Mexico. Nokia keep following the alphabetical naming convention with Symbian Carla and Symbian Donna. Symbian Carla is planned to support Dolby Surround and enhanced NFC features as well as a new browser application. Symbian Donna will be the first release to support Dual Core processor.

ARCHITECTURE

SYMBIAN KERNEL
The Symbian kernel (EKA2) supports sufficiently fast real-time response to build a single-core phone around itthat is, a phone in which a single processor core executes both the user applications and the signalling stack.The real-time kernel has a microkernel architecture containing only the minimum, most basic primitives and functionality, for maximum robustness, availability and responsiveness. It has been termed a nanokernel, because it needs an extended kernel to implement any other abstractions. It contains a scheduler, memory management and device drivers, with networking, telephony and file system support services in the OS Services Layer or the Base Services Layer. The inclusion of device drivers means the kernel is not a true microkernel.

DESIGN
Symbian features pre-emptive multitasking and memory protection, like other operating systems (especially those created for use on desktop computers). EPOC's approach to multitasking was inspired by VMS and is based on asynchronous server-based events. Symbian OS was created with three systems design principles in mind: The integrity and security of user data is paramount. User time must not be wasted. All resources are scarce. To best follow these principles, Symbian uses a microkernel, has a request-andcallback approach to services, and maintains separation between user interface and engine. The OS is optimised for low-power battery-based devices and for ROMbased systems (e.g. features like XIP and re-entrancy in shared libraries). Applications, and the OS itself, follow an object-oriented design: Model-viewcontroller (MVC).

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. There is a strong emphasis on conserving resources which is exemplified by Symbian-specific programming idioms like descriptors and a cleanup stack. Similar methods exist to conserve disk space, though disks on Symbian devices are usually flash memory. 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. This is done via a programming idiom called active objects. Similarly the Symbian approach to threads and processes is driven by reducing overheads.

OPERATING SYSTEM
The All over Model contains the following layers, from top to bottom: i. ii. iii. iv. a) b) c) d) v. vi. UI Framework Layer Application Services Layer Java ME OS Services Layer generic OS services communications services multimedia and graphics services connectivity services Base Services Layer Kernel Services & Hardware Interface Layer

UI FRAMEWORK LAYER The topmost layer of Symbian OS, the UI Framework layer provides the frameworks and libraries for constructing a user interface, including the basic class hierarchies for user interface controls and other frameworks and utilities used by user interface components. The UI Framework layer also includes a number of specialized, graphics- based frameworks which are used by the user interface but which are also available to applications, including the Animation framework, the Front End Processor (FEP) base framework and Grid. The user interface architecture in Symbian OS is based on a core framework called Uikon and a class hierarchy for user interface control called the control environment. Together, they provide the framework which denes basic GUI behavior.

APPLICATION SERVICE LAYER The Application Services layer provides support independent of the user interface for applications on the Symbian OS. These services divide into three broad groupings:

system-level services used by all applications, for example Text Handling services that support generic types of application and application-like services, for example personal productivity applications (example Quick Office) and data synchronization services (OVI Sync, for example); also included are a number of key application engines which are used and extended by licensees (Calendar and Agenda Model), as well as legacy engines (Data Engine) services based on more generic but application-centric technologies, for example mail, messaging and browsing (Messaging Store, MIME Recognition Framework, HTTP Transport Framework).

JAVA ME In some senses, Java does not t neatly into the layered operating system model. Symbians Java implementation is based around:

a virtual machine (VM) and layered support for the Java system which complements it, based on the MIDP 2.0 Prole a set of standard MIDP 2.0 Packages an implementation of the CLDC 1.1 language, I/O, and utilities services a number of low-level plug-ins which implement the interface between CLDC, the supported packages, and the native system.

Java support has been included in Symbian OS from the beginning, but the early Java system was based on pJava and JavaPhone. A standard system based on Java ME rst appeared in Symbian OS v7.0s. Since Symbian OS v8, the Java VM has been a port of Suns CLDC HI.

THE OS SERVICES LAYER The OS Services layer is, in effect, the middleware layer of Symbian OS, providing the servers, frameworks, and libraries that extend the bare system below it into a complete operating system. The services are divided into four major blocks, by broad functional area:

generic operating system services communications services multimedia and graphics services Connectivity services.

Together, these provide technology-specic but application- independent services in the operating system. In particular, the following servers are found here:

communications framework: the Comms Root Server and ESock (Sockets) Server provide the foundation for all communications services telephony: ETel (Telephony) Server, Fax Server and the principal servers for all telephony-based services networking: the TCP/IPv4/v6 networking stack implementation serial communications: the C32 (Serial) Server, providing standard serial communications support graphics and event handling: the WindowServer and Font and Bitmap Server provide all screen-drawing and font support, as well as system- and application-event handling connectivity: the Software Install Server, Remote File Server and Secure Backup Socket Server provide the foundation for connectivity services generic: the Task Scheduler provides scheduled task launching

Among the other important frameworks and libraries found in this layer is the Multimedia Framework (providing framework support for cameras, still- and moving-image recording, replay and manipulation, and audio players) and the C Standard Library, an important support library for software porting.

THE BASE SERVICES LAYER

The foundational layer of the Symbian OS, the Base Services layer provides the lowest level of user-side services. In particular, the Base Services layer includes the File Server and the User Library. The microkernel architecture of Symbian OS places them outside the kernel in user space. (This is in contrast to monolithic system architectures, such as both Linux and Microsoft Windows, in which le system services and User Library equivalents are provided as kernel services.) Other important system frameworks provided by this layer include the ECom Plug-in Framework, which implements the standard management interface used by all Symbian OS framework plug-ins; Store, which provides the persistence model; the Central Repository, the DBMS framework; and the Cryptography Library. The Base Services layer also includes the additional components which are needed to create a fully functioning base port without requiring any further high-level services: the Text WindowServer and the Text Shell.

THE KERNEL SERVICES AND HARDWARE INTERFACE LAYER


The lowest layer of the Symbian OS, the Kernel Services and Hardware Interface layer contains the operating system kernel itself, and the supporting components which abstract the interfaces to the underlying hardware, including logical and physical device drivers and variant support, which implements pre-packaged support for the standard, supported platforms (including the Emulator and reference hardware boards). In releases up to Symbian OS v8, the kernel was the EKA1 (Kernel Architecture 1) kernel, the original Symbian OS kernel. In Symbian OS v8, the EKA2 (Kernel Architecture 2) real-time kernel shipped for the rst time as an option. From Symbian OS v9, EKA1 no longer ships and all systems are based on the realtime EKA2 kernel.

FEATURES OF SYMBIAN BELLE

FREE-FORM, DIFFERENTLY-SIZED, LIVE WIDGETS


Widgets like the clock, email, music player, favourite contacts and the calendar have been redesigned and now come in five different sizes and rearranged to create a completely personalised set of screens. There are also new Toggle widgets for tasks like switching on Bluetooth and changing profiles.

MORE HOMESCREENS
The maximum number of homescreens rises from three to six, so now you can have absolutely everything close at hand.

MODERNISED NAVIGATION
The navigation and options bar at the bottom of the screen sports a modern, new look, similar to that first seen on the Nokia N9.

I MPROVED STATUS BAR


The status bar sports a modern, flat look and incorporates a pull down notifications tab that incorporates common settings and notification of incoming messages, missed calls and the rest.

INFORMATIVE LOCK SCREEN


The lock screen now tells you about missed calls, messages in your inbox and more, so you can check your phone at a glance. You can now also add a coloured wallpaper to your lock screen.

NFC DEVICES

With Symbian Belle, Near-Field Communications (NFC) is now deeply integrated into the operating system, so you can share pictures, connect with accessories, and check-in all with just a tap.

VISUAL MULTITASKING
Now you can flick between larger live images of your open apps to see whats going on at a glance and move quickly between your apps.

APPLICATION DEVELOPMENT
From 2010, Symbian switched to using standard C++ with Qt as the SDK, which can be used with either Qt Creator or Carbide. Qt supports the older Symbian S60 3rd and 5th editions, as well as the new Symbian platform. It also supports Maemo and MeeGo, Windows, Linux and Mac OS X. Alternative application development can be done using Python (see Python for S60), Adobe Flash or Java ME. Symbian OS previously used a Symbian specific C++ version along with Carbide.c++ integrated development environment (IDE) as the native application development environment. Web Runtime (WRT) is a portable application framework that allows creating widgets on the S60 Platform; it is an extension to the S60 WebKit based browser that allows launching multiple browser instances as separate JavaScript applications.

QT
As of 2010, the SDK for Symbian is standard C++, using Qt. It can be used with either Qt Creator, or Carbide (the older IDE previously used for Symbian development). A phone simulator allows testing of Qt apps. Apps compiled for the simulator are compiled to native code for the development platform, rather than having to be emulated.Application development can either use C++ or QML.

SYMBIAN C++
It is also possible to develop using Symbian C++, although it is not a standard implementation. Before the release of the Qt SDK, this was the standard development environment. There were multiple platforms based on Symbian OS that provided software development kit (SDKs) for application developers wishing

to target Symbian OS devices, the main ones being UIQ and S60. Individual phone products, or families, often had SDKs or SDK extensions downloadable from the maker's website too. The SDKs contain documentation, the header files and library files needed to build Symbian OS software, and a Windows-based emulator ("WINS"). Up until Symbian OS version 8, the SDKs also included a version of the GNU Compiler Collection (GCC) compiler (a cross-compiler) needed to build software to work on the device. Symbian OS 9 and the Symbian platform use a new application binary interface (ABI) and needed a different compiler. A choice of compilers is available including a newer version of GCC (see external links below). Unfortunately, Symbian C++ programming has a steep learning curve, as Symbian C++ requires the use of special techniques such as descriptors, active objects and the cleanup stack. This can make even relatively simple programs harder to implement than in other environments. Moreover, it was questionable whether these techniques, such as the memory management paradigm, were actually beneficial. It is possible that the techniques, developed for the much more restricted mobile hardware of the 1990s, simply caused unnecessary complexity in source code because programmers are needed to concentrate on low-level routines instead of more application-specific features. As of 2010, these issues are no longer the case when using standard C++, with the Qt SDK. Symbian C++ programming is commonly done with an integrated development environment (IDE). For earlier versions of Symbian OS, the commercial IDE CodeWarrior for Symbian OS was favoured. The CodeWarrior tools were replaced during 2006 by Carbide.c++, an Eclipse-based IDE developed by Nokia. Carbide.c++ is offered in four different versions: Express, Developer, Professional, and OEM, with increasing levels of capability. Fully featured software can be created and released with the Express edition, which is free. Features such as UI design, crash debugging etc. are available in the other, charged-for, editions. Microsoft Visual Studio 2003 and 2005 are also supported via the Carbide.vs plugin.

OTHER LANGUAGES
Symbian devices can also be programmed using Python, Java ME, Flash Lite, Ruby, .NET, Web Runtime (WRT) Widgets and Standard C/C++. Visual Basic programmers can use NS Basic to develop apps for S60 3rd Edition and UIQ 3 devices. In the past, Visual Basic, Visual Basic .NET, and C# development for Symbian were possible through AppForge Crossfire, a plugin for Microsoft Visual Studio. On 13 March 2007 AppForge ceased operations; Oracle purchased the intellectual property, but announced that they did not plan to sell or provide support for former AppForge products. Net60, a .NET compact framework for Symbian, which is developed by redFIVElabs, is sold as a commercial product. With Net60, VB.NET and C# (and other) source code is compiled into an intermediate language (IL) which is executed within the Symbian OS using a just-in-time compiler. (As of 18/1/10 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.) There is also a version of a Borland IDE for Symbian OS. Symbian OS development is also possible on Linux and Mac OS X using tools and methods developed by the community, partly enabled by Symbian releasing the source code for key tools. A plugin that allows development of Symbian OS applications in Apple's Xcode IDE for Mac OS X was available. Java ME applications for Symbian OS are developed using standard techniques and tools such as the Sun Java Wireless Toolkit (formerly the J2ME Wireless Toolkit). They are packaged as JAR (and possibly JAD) files. Both CLDC and CDC applications can be created with NetBeans. Other tools include SuperWaba, which can be used to build Symbian 7.0 and 7.0s programs using Java. Nokia S60 phones can also run Python scripts when the interpreter Python for S60 is installed, with a custom made API that allows for Bluetooth support and such. There is also an interactive console to allow the user to write python scripts directly from the phone.

CRITICISMS
Early versions of the firmware for the original Nokia N97, running on Symbian^1/Series 60 5th Edition have been heavily criticized. In November 2010, Smartphone blog All About Symbian criticized the performance of Symbian's default web browser and recommended the alternative browser Opera Mobile. Nokia's Senior Vice President Jo Harlow promised an updated browser in the first quarter of 2011.

MALWARE
MOBILE VIRUS Symbian OS was subject to a variety of viruses, the best known of which is Cabir. Usually these send themselves from phone to phone by Bluetooth. So far, none have taken advantage of any flaws in Symbian OS instead, they have all asked the user whether they would like to install the software, with somewhat prominent warnings that it can't be trusted. 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. Commercial developers who can afford the cost can apply to have their software signed via the Symbian Signed program. Developers also have the option of self-signing their programs. However, the set of available features does not include access to Bluetooth, IrDA, GSM CellID, voice calls, GPS and few others. Some operators have opted to disable all certificates other than the Symbian Signed certificates.

Some other hostile programs are listed below, but all of them still require the input of the user to run. Drever.A is a malicious SIS file trojan that attempts to disable the automatic startup from Simworks and Kaspersky Symbian Anti-Virus applications. Locknut.B is a malicious SIS file trojan that pretends to be a patch for Symbian S60 mobile phones. When installed, it drops a binary that will crash a critical system service component. This will prevent any application from being launched in the phone. Mabir.A is basically Cabir with added MMS functionality. The two are written by the same author, and the code shares many similarities. It spreads using Bluetooth via the same routine as early variants of Cabir. As Mabir.A activates it will search for the first phone it finds, and starts sending copies of itself to that phone. Fontal.A is an SIS file trojan that installs a corrupted file which causes the phone to fail at reboot. If the user tries to reboot the infected phone, it will be permanently stick on the reboot, and cannot be used without disinfection that is, the use of the reformat key combination which causes the phone to lose all data. Being a trojan, Frontal cannot spread by itself the most likely way for the user to get infected would be to acquire the file from untrusted sources, and then install it to the phone, inadvertently or otherwise. A new form of malware threat to Symbian OS in form of 'cooked firmware' was recently demonstrated at the International Malware Conference, MalCon, December 2010, by Indian hacker Atul Alex.

BYPASSING PLATFORM SECURITY Symbian OS 9.x devices can be hacked to remove the platform security introduced in OS 9.1 onwards, allowing users to execute unsigned code.This allows altering system files, and access to previously locked areas of the OS. The hack was criticised by Nokia for potentially increasing the threat posed by mobile viruses as unsigned code can be executed.

NOKIA SOFTWARE UPDATER

Nokia Software Updater is a Windows based application from Nokia that enables customers to update and recover their mobile device firmware of a recent Series 40 or S60 device from any Internet enabled access point. The full list of supported phones is available in the official site. Nokia Software Updater beta phase has ended at August 25, 2011. NSU 3.0.495 has now been released to consumers. It can be downloaded from www.nokia.co.in.

The Nokia Software Updater requires at least 256MB of RAM to function. This can be a problem with older systems on which attempting to start the application results in an error message.

UPDATES AVAILABLE FOR

Updates are available for nokia smartphones such as

N8

C7

C6-01

X7

E7

REFERENCES

http://www.nokia.co.in/ http://www.developer.nokia.com/

You might also like