EMBEDDED OPERATING SYSTEM
THE ANDROID AND SYMBIAN OS
SUBMITTED BY:-SATYADEEP MISHRA
ROLL NO.:-10IT61B08
CONTENT
GETTING STARTED WITH E-OS WHAT IS ANDROID? PLATFORM ARCHITECTURE OF ANDROID APPLICATION BUILDING BLOCKS & DEVELOPMENT
TOOLS WHY ANDROID? SUMMARY INTRODUCTION TO SYMBIAN OS ARCHITECTURE SECURITY ASPECTS COMPARISON BETWEEN SYMBIAN & ANDROID CONCLUSION
GETTING STARTED WITH EMBEDDED OPERATING SYSTEM
An embedded operating system is an operating system for embedded computer systems.
These operating systems are designed to be compact, efficient, and reliable.
E-OS are frequently also real-time operating systems, and the term RTOS is often used as a synonym for embedded operating system.
CONT….
An important difference between most embedded operating systems and desktop operating systems is that the application, including the operating system, is usually statically linked together into a single executable image.
Unlike a desktop operating system, the embedded operating system does not load and execute applications. This means that the system is only able to run a single application.
SOME EXAMPLES ARE…
IOS (MAC OS) Inferno (distributed OS originally from Bell Labs) Pen Point OS Palm OS from Palm, Inc. Symbian OS Windows CE, from Microsoft
# Embedded Linux Android Open Zaurus Metano GNU/Linux from Pynell - Embedded Systems.
FEW REASONS TO GO MAD!!!!
MOBILE APPLICATION DEVELOPMENT(MAD)Smart Phones
– Internet access anywhere– Social networking
Millions of mobile usersOpen standards
WHAT IS ANDROID?
Google's Android is an open-source platform that's currently available on a wide variety of smart phones.
Android is a software stack for mobile devices that includes an operating system, middleware and key applications.
The Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.
Based on the Linux kernel
HISTORY & OHA
Google Inc. purchased the initial developer of the software in 20052005. from Android Inc. which was founded in Palo Alto, California, United States in October, 20032003 by Andy Rubin, Rich Miner.
OHA Est. 5th Nov 2007, led by Google, open Source Main Product Android Platform Enthusiastic Support from Industry
– Equipment makers– Network Operators
HTC was First to deliver ANDROID
Open Handset Alliance(OHA)
ANDROID ARCHITECTURE
• Linux kernel
• Libraries
• Android run time
– core libraries
– Dalvik virtual machine
• Application layer
• Application protocol
Colour - Good
Use a colour of font that contrasts sharply with the background– Ex: blue font on white background
Use colour to reinforce the logic of your structure– Ex: light blue title and dark blue text
Use colour to emphasize a point– But only use this occasionally
Applications
Set of core applications including an email client, SMS program, calendar, maps, browser, contacts.
All applications are written using the Java programming language.
Built in and user apps. Can replace built in apps.
Application Framework
Access location information, run background services, set alarms, add notifications to the status bar, and much, much more.
Build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser
Providing access to non-code resources such as localized strings, graphics, and layout files.
Activity manager – manages application life cycle.
Android Runtime
Includes a set of core libraries of JAVA that provides most of the functionality
Runs in its own process, with its own instance of the Dalvik Virtual Machine
The Dalvik VM executes files in the Dalvik Executable (.dex) – Compact and efficient than class files– Limited memory and battery power
Dalvik Virtual Machine
All applications written in Java and converted to the Dalvik
executable .dex.
Every android app runs its own process, with its own instance
of the Dalvik virtual machine.
Not a traditional JVM, but a custom VM designed to run
multiple instances efficiently on a single device.
VM uses Linux kernel to handle low-level functionality including
security, threading, process and memory managemet.
Linux Kernel
Acts as an abstraction layer between the hardware and the rest of the software stack.
Relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model.
Works as a HAL
Libraries
System C library - implementation of the C library (libc). Media Libraries - based on PacketVideo's Open CORE. Surface Manager - composites 2D and 3D graphic layers LibWebCore - a modern embeddable web view. SGL - the underlying 2D graphics engine. 3D libraries - based on OpenGL ES 1.0 APIs; the libraries
use hardware 3D acceleration. FreeType - bitmap and vector font rendering SQLite - a powerful and lightweight relational database
engine .
Application Building Blocks
BLOCKSActivity- a single screenIntent Receiver-to execute in reaction to an external event(Phone Ring)Service-code that is long-lived and runs without a UI(Media Player)Content Provider-an application's data to be shared with other applications
Development Tools
TOOLS
Java LanguageJava Language Eclipse IDEEclipse IDE ADT Plug-in For Eclipse ADT Plug-in For Eclipse Android SDKAndroid SDK
Android EmulatorAndroid Emulator
Command line tools Command line tools
DocumentationsDocumentations
Application Lifecycle
Application run in their own processes (VM, PID)Processes are started and stopped as needed to run an application's componentsProcesses may be killed to reclaim resources
Why Android ?!Why Android ?!
1 – Open Source1 – Open Source
2 – Flash Player Support2 – Flash Player Support
3 – Different Models3 – Different Models
4 – Reasonable prices4 – Reasonable prices
5 – Google Apps5 – Google Apps
6 – Android Apps like (Astro file manager, 6 – Android Apps like (Astro file manager, Taskiller etc.)Taskiller etc.)
CASE STUDY :-HOW ANDOID IS BETTER??
When Android Compared with iPhone (Apple)
- Browsing
- Desktop
- Connectivity
- PC Connection
- Multi-notification
- Market
- Google Integration
- Open Source
- Open to carriers
Android Software Updates
Android 1.1 Android 1.5 – Cupcake Android 1.6 – Donuts (CDMA) Android 2.0 – Éclair Android 2.2 – Froyo Android 2.3 - Gingerbread Android 3 - Honeycomb API Levels used by apps to identify software version on
the device Android apps are generally forward compatible with
newer version, but not necessarily backwards compatible
SYMBIAN OS…(INTRODUCTION)
Symbian OS is one of Nokia's mobile operating system for mobile devices and smartphones, with associated libraries, user interface, frameworks and reference implementations of common tools, originally developed by Symbian Ltd.
HISTORY
Psion founded by David Potter inn 1980 launched the Psion
Organizer, the world's first volume-produced handheld computer in
1984.
In 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.
In February 2004 - Symbian OS v8.0 is announced.
In February 2005 - Symbian OS v9 is announced.
In May 2006 - 100th commercial phone model ships.
HISTORY Contd..
In November 2006 - 100 million Symbian smartphones shipped.
In 2008, the former Symbian Software Limited was acquired by Nokia
and a new independent non-profit organization called the Symbian
Foundation was established.
The platform has been designated as the successor to Symbian OS,
following the official launch of the Symbian Foundation in April 2009.
The Symbian Platform was officially made available as open source
code in February 2010.
CHARACTERISTICS..
PROCESSING THREAD BASED MEMORY MANAGEMENT INPUT/OUTPUT
KERNEL EXTENSION
DEVICE DRIVERS
DMA(DIRECT MEMORY ACCESS
BLOCKING I/O
STOAGE MEDIA
MEMORY MANAGEMENT
How Symbian OS Addresses Memory– Symbian OS is a 32-bit operating system,
addresses can range up to 4 GB– Symbian OS divides memory into virtual
pages and physical frames– Symbian OS adopts a two-level page table
strategy
MEMORY MANAGEMENT
FEATURES
CLIENT SERVER ACHITECTURE EVENT MANAGEMENT OBJECT ORIENTED DESIGN POWER MANAGEMENT ROBUST AND DEPENDABLE FULL AMLTI TASKING AN OPEN OPERATING SYSTEM MEMORY MANAGEMENT
STRENGTHS AND WEAKNESS
STRENGTHMEMORY MANAGEMENTEXECUTION IN ONE PLACE
WEAKNESSNO VITUAL MEMORY
SYMBIAN ACHITECTURE
Symbian has a microkernel architecture, which means that the minimum necessary is within the kernel to maximise robustness, availability and responsiveness.
Symbian is designed to emphasise compatibility with other devices, especially removable media file systems.
There is also a large volume of User Interface (UI) Code. Symbian includes a reference user-interface called
"TechView". It is very similar to the user interface from the Psion Series 5
personal organiser and is not used for any production phone user interface.
MORE DETAILED ARCHITECTURE
PLATFORM SECURITY
TrustAccess to private data
SecurityCost controlCompromise important telephone functionality
ProtectionSoftware ownershipDRM
PLATFORM SECURITY
Example of Applications where the Symbian OS is being used
Nokia Series 80 interface
UIQ interface(Used for PDAs such as Sony Ericsson P800 )
Nokia S60 interface
DEVELOPING SYMBIAN OS
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.
It is also possible to develop using Symbian C++, although it is not
a standard implementation.
Prior to the release of the Qt SDK, this was the standard
development environment.
ADVANTAGES
Greater range of applications.
High quality games.
Better inbuilt wap browser.
Connectivity is lot more easier and faster.
Real Player, Smart movie player etc. sort of application are not
available with java phones.
You can install software and applications of any type
You can download big files through your phone easily with 3G
around.
DISADVANTAGE
The OS is not available for PCs .
The Symbian OS can be easily affected by a
Virus.
COMPARSION OF SYMBIAN & ANDROID
OPERATING SOFTWARE or FIRMWARE FLASHING Your phone with new FIRMWARE CHANGING PHONE FEATURES PROCESSOR and its SPEED MODIFICATIONS
CONCLUSION
In the small and rapidly growing world the need of mobiles and its applications are obvious. To meet the users embedded OS are playing the vital. To speak in a sentence about Android and Symbian, Android is much advanced and provides more value to the end users. Symbian needs updates its features.
REFERENCE
[1] http://www.android.com
[2] http://developer.android.com/
[3] http://www.androidwiki.com
[4] www.symbian.com
[5] www.symbian.com/technology/symbos-phones.html