Symbian Platform+Overview
Symbian Platform+Overview
Symbian Platform+Overview
Platform Overview
Operating System?
Operating System
System Hardware
Manufacturers Buy
Licenses of Symbian
Symbian OS—Layered
Model
• Symbian OS is Structured in Layers
• OS is Decomposed in Layers
• Layers are Decomposed in Blocks and Sub-blocks
• Blocks and Sub-blocks are Decomposed in
Components or Collection of Components
• Layers are Highest Level of Abstractions
• Components are Lowest Level of Abstractions
• Layers and Blocks are Logical Concepts
• Components are Physical Objects (Software Code)
Symbian OS—Layered
Model
• Layers
– Each layer abstracts the functionality of the layer beneath and
provides services to the layer above
– Examples
• OS Services Layer
• UI Framework Layer
• Blocks
– A block or sub-block roughly corresponds to a “Technology
Domain”
– Examples:
• Telephony Services
• Network Services
• Components
– Components are the basic entities of the model
– Common, Optional and Replaceable functionality is defined at
Component Level
Symbian OS—Layered
Model
• Symbian OS is Shipped in Headless Configuration
– Minimal User Interface
– Not Production Quality User Interface
• Mobile Phone Manufacturers Either
– Develop their Own Production Quality User Interface or
– License a Suitable User Interface
• Production Quality User Interfaces Already
Developed:
– S60 (Series 60)—Developed and Licensed by Nokia
– UIQ—Developed and Licensed by UIQ Technology
– MOAP (Mobile Oriented Application Platform)—
Developed by FOMA (Freedom of Mobile Access)
Consortium in Japan
– Series 80 and 90—Developed by Nokia but not Licensed
to Others
Symbian OS—Layered
Architecture
S60 UIQ MOAP
Base
Base Services
Service Layer
Layer
• Virtual Machine
• MIDP
• CLDC
• Plugins for Interfacing with Native
System
Symbian OS—Key Design
Patterns
• System is “A Number of Collaborating
Components”
• Pattern—1: Client—Server Relationship Between
System Components
– Clients Request for Services
– Servers Own and Share Services/Resources among
Clients
– All System Resources are Managed by Servers—Kernel
Itself is a Server
– Window Server manages display resources
– Serial Server manages Data Communication Hardware
– Telephony Server manages Telephonic Services
– Uikon Server manages GUI abstractions
– Client and Server Run in their Own Separate Processes
in Separate Memory Segments
Symbian OS—Key Design
Patterns
• Pattern—2: Pervasive Asynchronous Methods in
Client-Server Communication
• Pattern—3: Framework Plugin Model (also Called
ECom)
– Used Extensively in All OS Layers
– Framework is a Layer Between a Calling Client and an
Implementation