• No results found

Symbian Operating System

N/A
N/A
Protected

Academic year: 2021

Share "Symbian Operating System"

Copied!
79
0
0

Loading.... (view fulltext now)

Full text

(1)
(2)
(3)
(4)
(5)

1. Introduction

Symbian’s Introduction

ÆThe Smartphone operating system Symbian OS is produced by the software development and licensing company Symbian Ltd.

Æ Symbian Ltd was established in June 1998 and is headquartered in Southwark in the UK, and the current CEO is Nigel Clifford.

(6)
(7)
(8)
(9)
(10)
(11)
(12)
(13)

2. Platform

2.3 Network Connectivity

9

Which evolution in the various versions?

ƒ Symbian OS 6.0 and 6.1 (also called ER6 ): Bluetooth was added for

exchanging data over short distances from fixed and mobile devices. (2002)

ƒ Symbian OS 7.0 and 7.0s: This version added EDGE support and IPV6.

(2003)

What is the EDGE? (Enhanced Data rates for GSM Evolution) What is the IPV6?

ƒ Symbian OS 8.0: There are not great evolution has shared some API’s to

(14)

2. Platform

2.3 Network Connectivity

9

Which evolution in the various versions?

ƒ Symbian OS 9.1: Change of version 1.2 for the Bluetooth has version 2.0

where the difference is the introduction of an Enhanced Data Rate (EDR) for faster data transfer.

ƒ Symbian OS 9.3: The WIFI 802.11 and the HSDPA (High Speed Downlink

Packet Access) appear on Symbian OS.

What is HSDPA?

ƒ Symbian Os 9.5: This last version includes native-support for mobile digital television broadcasts in DVB-H and ISDB-T formats and also location

(15)

Features of Symbian V9

• Browsing: full web browser support and WAP stack for mbile browsing

• Messaging: support MMS, EMS, SMS, POP3, IMAP4, SMTP, MHTML; standard attachments; fax

• Multimedia: shared access to screen, keyboard, fonts and bitmaps; audio recording and

playback, and image related functionality (support common audio and image formats), including API for graphics acceleration, streaming and direct screen access

• Communication protocols: including TCP, IP version 4, IP version 6 and WAP, IrDA, Bluetooth, USB

• Mobile telephony: abstract API for cellular standards.

• Data synchronization: over-the-air (OTA) synchronization support using SyncML. Supported over serial, infrared, Bluetooth and USB links. Provides synchronization : PIM data, transfer of files, and document conversion to and from non-Symbian OS formats.

• Security: full-strength encryption and certificate management, secure communications protocols (including HTTPS, WTLS and SSL), WIM framework and certificate-based application

(16)

Application platforms

Series 60 is a UI for mobile phones that are single-handed operated. In addition to

voice communication, multimedia messaging, content browsing and application downloading are the main features of this platform.

Series 80 is a UI for devices with larger horizontal screens. It is used in clamshell

devices with a keyboard.

UIQ is a customizable pen-based user interface platform for media-rich mobile phones

based on Symbian OS.

Symbian OS is also being used in the new Series 90 platform, which is being introduced in the Nokia 7700

phone. With a pen input user interface, a horizontal screen and an optional television tuner, the Nokia 7700

(17)
(18)
(19)
(20)
(21)
(22)

Processor Modes

ARM Processor

• 32 bit registers in Privileged mode

• 17 bit in user mode

Supervisor mode:

kernel owns device drivers

implements the scheduling & synchronization policy

does power management

allocates memory to itself and user-mode (that is, unprivileged) processes.

User mode: Runs user level application like: file server and windows server.

(23)

Architecture

Client and Server in different threads (processes)

• Session based.

• Message passing.

• Server publishes client facing API.

•Symbian OS implements preemptive multithreading so

that it can run multiple applications and servers

simultaneously.

•Active objects are used to implement

nonpreemptivemultitasking within the context of a single

thread.

(24)
(25)
(26)
(27)
(28)
(29)
(30)

Memory Management

Supports RAM maximum of 2GB.

Applications share RAM with operating system but has exclusive access to their allocated memory area

Flash and expansion card memory is used for storage.

The kernel runs within its own protected address space. So a programs memory leak or stack over-run can't overwrite the kernel's stack or heap which would cause a system crash.

Symbian OS presents a virtual machine model to all running programs.

(31)

File Management

File server provides the access

The drive, directory and file hierarchy is VFAT, thus making the file system naturally compatible with desktop PCs.

It provides local file systems (ROM, RAM and removable media), and an interface to allow dynamically installable file systems, such as those required to communicate with remote disks over a network.

File Manager: File handling application.

• Browse the structure of internal storage, Memory stick storage space. It can be used for

• File management operations like Copy, Move, Delete, Rename, View properties Change file attributes, and more. Folders and files can also be managed and opened in appropriate viewers.

(32)

Processes and Threads

Supports multitasking and multithreading.

Only one application can have access to UI.

A process can have one or more threads.

Uses preemptive multitasking.

The thread with the highest priority being ready to run will be scheduled next.

All user processes have their own memory address spaces and all threads within the same process share the same memory address space.

Each Process and threads have their own stack and heaps.

Thread Priorities

• Absolute: Ignoring the priority of a process owning the thread

• Relative: Overall priority of a thread is defined as a priority of the process owning the thread plus the relative priority value.

(33)
(34)
(35)
(36)
(37)
(38)

Mutual Exclusion & Synchronization

Semaphore: Global or Local

• Wait(){count--; if(count<0) the calling thread is put in waiting state;}

• Signal(){if(count<0) Mark the first thread waiting for this semaphore ready to run; count--;}

Mutexe: Global or Local.

Critical Section: Critical sections are used for synchronizing exclusive access to shared resources within a single process

(39)

Programming

The Smart phone environment

Basics of the Symbian OS

Differences between C++ and Symbian C++

What a Java programmer should know

What a C++ programmer should know

Memory management

(40)

Programming

Controls

Dialogs

Views

Files, the filesystem

Communication and

Messaging

(41)

The smart phone environmet

1G, 2G, 2,5G, 3G, 4G

GSM Global System for Mobile Comm.

CDMA (USA) Code Division Mult. Acc.

CSD Circuit Switched Data (GSM Data)

GPRS General Packet Radio Service

HSCSD High Speed CSD

(42)

The smart phone environmet

UMTS Universal Mobile Telecommunication Services -> 2 Mbps

SMS, MMS, Email, Fax, Web (HTML), WAP

IrDA, Bluetooth, USB

(43)

Symbian OS

Most common OS in devices like mobile phones

Strong influence from device manufacturers

Series (60,80,90) platforms

Programmable with a C++ like language

Also Java with a JRE

(44)

Symbian architecture

Kernel

Base Libraries

Application services, engines and protocols

Application framework

Communication architecture

(45)

Symbian architecture

Kernel

system memory

program scheduling

resource allocation

(46)
(47)

Symbian architecture

Base Libraries

APIs for basic computing, like

string manipulation

file IO

db management

(48)

Symbian architecture

Application services, engines and protocols

Application data, such as the phone book

Devices services, such as alarms etc.

(49)

Symbian architecture

Application framework

GUI

Communications architecture

TCP/IP, IrDA, BT, SMS, etc.

Middleware feature libraries

(50)

Multitasking

Threads

pre-emptive

single program can have several threads

Processes

.exe

a main thread

(51)

DLLs

Dynamic Link Libraries

Static interface DLLs

"traditional" shared functions

Plymorphic DLLs

plug-ins, e.g. device drivers

No static data (until OS v.9.0)

(52)

Client/Server model

basic concept in Symbian

Example: file access

C/S concept hidden by the API

Server:

No UI

(53)
(54)
(55)
(56)
(57)

Memory

ROM

OS Software

cannot be written, but can be partly read

RAM

volatile, usually up to 30 MB

Internal Flash

disk drive type of memory (C:)

Memory Cards

(58)

Addressing Memory

Two types of memory addresses: virtual and physical -> mapping.

MMU (Memory Management Unit)

chunks (virtually addressed pieces of memory, not allways backed

with physical memory)

stack and heap

static

(59)

Stack and heap

Stack

automatic variables

class members

Heap

new

(60)

Addressing Memory

Two areas for memory: Home area and Run area.

Process data of a running process is in the run area.

Applications cannot reference memory in the home area

Protects process memory

(61)

The Kernel

Creation and scheduling of processes and threads

Communication between threads and processes (mutexes,

semaphores)

System memory

(62)

The Kernel

HAL (Hardware Abstraction Layer)

Most code hardware independent

Loading and communicating with device drivers

User library: A DLL that provides access to kernel functions

(privileged mode)

(63)

The Kernel

Two main components: Executive and Server

Functions executed by server have access to all global data of the

kernel

However, they are slow

Functions executed by the executive are faster

(64)

2. Platform

2.4 Security

The Symbian security model can be broken down into three main modules:

1.

Trusted Computing Base (TCB)

Kernel, file system and software installer.

2.

Data Caging

Protects executables and data files of applications.

3.

Capabilities

Define what the application can and cannot do.

Capabilities:

Four types of capabilites: - Open to all

- Granted by the user at installation time - Granted through Symbian Signed

(65)

2. Platform

Signing an application

- Open Signed

- Express Signed

- Certified Signing ( Symbian Signed )

(66)
(67)

2. Platform

2.6 Future possibilities

The leading mobile OS

Æ Symbian OS is still the “leading figure” in the smartphones market and

according to Gartner Symbian’s market share is still the majority with a trend to decline.

Symbian - open source software platform

Æ Nokia’s buying the rest of Symbian that it doesn’t already own, and will then create the Symbian Foundation, in collaboration with a number of other

companies, and make Symbian royalty-free and open-source.

Implications to the other OS

Æ The Symbian Foundation stirs up the future of the open mobile platform space. It does seem fair to draw the conclusion that the Symbian Foundation puts the Symbian platform in a stronger position and this will negatively affect the other players.

(68)

3. Software development

3.1 Development requirements

9

The right SDK

ƒ

S60

ƒ

UIQ

ƒ

MOAP

(69)

3. Software development

UIQ

Telephones

UIQ 3.1 (Symbian OS v9.2) Motorola MOTORIZR Z8

UIQ 3.0 (Symbian OS v9.1) Sony Ericsson M600, W960, P990

UIQ 2.1 (Symbian OS v7.0) Sony Ericsson P910, P900, Motorola A1000, FOMA M1000, Arima U308

UIQ 2.0 (Symbian OS v7.0) Sony Ericsson P800, P802, Motorola A920, A925, BenQ P30

© artesis 2008 | 69

S60

Telephones

S60 3rd edition FP2 (Symbian OS v9.3) Nokia N96, N78 Samsung I8510 innov8, L870

S60 3rd edition FP1 (Symbian OS v9.2) Nokia N95, N82, N77, Samsung i450, i550, SGH-i520, SGH-i560, G81, LG JOY

S60 3rd edition (Symbian OS v9.1) Nokia E60, E61, E70; 3250, N71, N80, N91, N92 S60 2nd edition FP3 (Symbian OS v8.1) Nokia N70, N90

S60 2nd edition FP2 (Symbian OS v8.0a) Nokia 6630, 6680, 6681, 6682, Lenovo P930

S60 2nd edition FP1 (Symbian OS v7.0s) Nokia 3230, 6670, 7610, 6620, 6260, Panasonic x700, x800, SDH-D720

S60 2nd edition (Symbian OS v7.0s) Nokia 6600

S60 1st edition (Symbian OS v6.1) Nokia 7650, Nokia 3650, 3600, 3660, 3620, N-Gage(QD), Sendo X, Siemens SX1

(70)

3. Software development

3.2 IDE and Tools

What is IDE* ?

An IDE is a software application that allows the computer programmer

to develop software for a certain platform. An IDE normally has a:

source editor, compiler and/or interpreter and debugger.

*Integrated Development Environment or also known as integrated design environment

(71)

3. Software development

Which IDE ?

9

Carbide C++

9

CodeWarrior

(72)

3. Software development

What tools are needed:

Tool name

Description

GCC for Symbian Can be used to compile Symbian C++ applications. Symbian Certificate Manager Allows you to manage your certificates within

Carbide

Symbian DevCert Request Enables you to obtain a Symbian Developer Certificate

Symbian MakeSIS Allows you to “convert” your c++ programs into .sis packages, which simplify the installation on other Symbian OS devices.

(73)

Programing languages

Symbian OS

offers a choice of programming languages to the

developer. Symbian OS is written in

C++

, and this is therefore

regarded as its primary programming language.

(74)

Programing languages

Æ

Java

2nd the most important programing language on

Symbian

OS

.

Æ

Others programing languages which you can use on Symbian;

JavaScript

,

Assembler

,

WMLScript

,

C#

,

Visual Basic

,

OPL

and so

on…

(75)

4. Overall Evaluation

4.1 Advantages

Operating system designed from scratch for mobile platforms

• mobile phones are both small and mobile

• mobile phones are ubiquitous – they target a mass-market of consumer,

enterprise and professional users

• mobile phones are occasionally connected – they can be used when

connected to the wireless phone network, locally to other devices, or on their own

• manufacturers need to differentiate their products in order to innovate and

compete in a fast-evolving market

• the platform has to be open to enable independent technology and software

vendors to develop third-party applications, technologies and services

Best fitted for mobile market

(76)

4. Overall Evaluation

4.2 Limitations

Steep learning curve for developers

Developing in general

Porting

Symbian signed

(77)

4. Overall Evaluation

4.3 Conclusion

9

Manufacturs point-of-view

• Strong Operating System • Established value

9

Developers point-of-view

• Developing for Symbian brings limitations.

(78)

Success

Technical

• Symbian Has large software development community.

Symbian OS maintains its position as the industry’s leading development platform for phones designed for 3G networks

• Symbian OS™ Real Time Compatibility Layer (RTCL)

• Modularity: runtime linking between dynamically linked shared librariy

Commercial

Q3 2005 shipments of Symbian OS™ phones rise 131% (Symbian OS, 2005)

Symbian OS worldwide installed base reaches almost 48 million phones.

(79)

Threats

• PC nature: User can install software .

• Symbian OS has been subject to a variety of viruses, the best known of which is Cabir.

References

Related documents

Manageability Scout Enterprise, flash memory management, embedded operating system update and system monitoring, BIOS update, managing devices by location, group or user,

 Mechanism of forensic data: FLASH MEMORY, EXTERNAL MEMORY, SIM CARD, EEPROM and RAM.  Analysis methodologies: PHYSICAL

The difference between the temperature maps in active and saturation regions is mainly due to electro-thermal effects that change the current repartition on the surface of the

A minimum of 24 hours in Earned Value Management (EVM) and cost estimates training, or completion of one of the following courses or equivalent..

Note for young folks – MVS has morphed into z/OS applications operating system hardware processors memory i/o subsystem network interface applications operating system

We plan to develop out application in Java, as Java is the leading mobile ap- plication development environment with more than 190 operators worldwide that have deployed Java

o Brought student groups to the 2008 and 2007 Maryland Business Education Association annual conference and include students in my professional

Since current treatments for both metastatic ACCs and PPGLs are not associated with a good objective response rate, trials of adjuvant therapies for high-risk patients might be the