SlideShare uma empresa Scribd logo
1 de 52
An Introduction to   Symbian O.S. Presented By: Deepak Rathi PGDWTA-IV-2008 [C-DAC NOIDA]
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object]
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Definition ,[object Object],[object Object]
History ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Market Share ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Symbian Device Classes/Platforms ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Symbian OS Features ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Hardware resources ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Memory Organization and Disk Drives ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Software components ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Processes, Threads, and Context Switching ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Kernel and User Library... 1  ,[object Object],[object Object],[object Object],[object Object]
Kernel and User Library... 2 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Event handling and active objects... 1 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Event handling and active objects... 2 ,[object Object],[object Object],[object Object]
Event handling and active objects... 3 ,[object Object],[object Object],[object Object]
Client-server framework
Client-server framework... 2 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Symbian Series 60 and UIQ Development Tools ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Installation directories created ,[object Object],[object Object],[object Object],[object Object],[object Object]
Using the Application Wizard...1
Using the Application Wizard...2
Using the Application Wizard...3 Application title will appear on the device Each application has a unique identifier
Using the Application Wizard...4 Generated classes: - Application - Document - User interface - Container
Using the Application Wizard...5 Generated directories: - C++ include files - C++ source files - group: Symbian project files - data, aif: resource files - install: installation files
Debugging Programs in the Emulator ,[object Object],[object Object],Breakpoint Inspect variables
Generated Files GUI resources Project definition file Package definition file Source files
Outline ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Naming Conventions for Class Types...1 Category  Examples  Description  T (“data type”) classes TDesC, TPoint, TFileName  T classes don't have a destructor. They act like built-in types. No pointers, no resources C (“cleanup”) classes CConsoleBase, CActive, CBase  Any class derived from CBase. C classes are  allocated on  heap.  CBase also includes a virtual destructor, so that by calling delete on a CBase* pointer any C object it points to is properly destroyed.
Naming Conventions for Class Types...2 Category  Examples  Description  R (“resource/remote”) classes RFile, RTimer, RWriteStream, RWindow   Client-side handle to an OS resource (file server, message server, etc.) M (“mixin”) classes/interface classes MGraphicsDevice-Map,MGameViewCmd-Handler, MEikMenuObserver  An interface consisting of pure virtual functions. A class implementing this interface should derive from it. M classes are the only approved use of multiple inheritance in Symbian OS.
Naming Conventions for Variables and Constants ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Basic Data Types – Integers, Void, Boolean Boolean Void Signed Integer Unsigned Integer Name Size (bytes) Tint >=4 Tint8 1 Tint16 2 Tint32 4 Tint64 8 Name Size (bytes) TUint >=4 TUint8 1 TUint16 2 TUint32 4 Name Size TBool 4 Name Type TAny Void
Basic Data Types-Floating Point, Characters Floating Point (avoid it) Character Name Size (bytes)  TReal 8 TReal32 4 TReal64 8 TRealX 12 Name Size (bytes) TText8 1 TText 2 TText16 2 TChar 4
Error Handling and Cleanup ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Exception Handling…1 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Exception Handling…2 ,[object Object],[object Object],[object Object]
Exception Handling…3 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Resource Management:   Exceptions, Panics, Leaves, and Traps ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Throw Exceptions: User::Leave() ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],] L indicates that method may leave  (naming convention) ] throw exception with reason code
Cleanup Stack: Avoid Memory Leaks ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Two Phase Constructor ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Descriptors: Containers for (16-bit) Text and (8-bit) Binary Data ,[object Object],[object Object],[object Object],[object Object]
Descriptor Classes Name Instatiable Modifiable Description TDesC No No abstract base class; argument passing and return values (const TDesC&) TDes No Yes abstract base class; argument passing return values (const TDes&) TBufC Yes No templated buffer descriptor: (size, data) stored together TPtrC Yes No pointer descriptor: (size, pointer) separate from data, data not owned TBuf Yes Yes templated buffer descriptor: (size, maximum size, data) stored together TPtr Yes Yes pointer descriptor: (size, maximum size, pointer) separate from data, data not owned HBufC Yes No heap descriptor: (size, maximum size, data) stored together on the heap
Descriptor API: Search, Extract, Insert, Delete, Replace, Format ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Heap Buffer Descriptors HBufC: heap: (size, max size, data) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Descriptors as Arguments and Return Types ,[object Object],[object Object],[object Object]
Outline d ,[object Object],[object Object],[object Object],[object Object],[object Object]
Any Queries!!! ☺
Thank you for your endurance! ☺

Mais conteúdo relacionado

Mais procurados

Mobile operating system (os)
Mobile operating system (os)Mobile operating system (os)
Mobile operating system (os)AMIT GUPTA
 
MOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMMOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMcool192
 
Mobile OS Computer presentation
Mobile OS Computer presentationMobile OS Computer presentation
Mobile OS Computer presentationMd Rabius Sany
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating SystemSonal Poddar
 
Comparative Study On Mobile Operating Systems
  Comparative Study On Mobile Operating Systems   Comparative Study On Mobile Operating Systems
Comparative Study On Mobile Operating Systems Hardik Jain
 
Mobile Development Overview
Mobile Development OverviewMobile Development Overview
Mobile Development OverviewShawn Grimes
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App DevelopmentChris Morrell
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systemsSriram PV
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..Aashish Uppal
 
Comparison of mobile operating systems
Comparison of mobile operating systemsComparison of mobile operating systems
Comparison of mobile operating systemsSumit kumar Dhanuk
 

Mais procurados (20)

Mobile operating system (os)
Mobile operating system (os)Mobile operating system (os)
Mobile operating system (os)
 
MOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMMOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEM
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
 
mobile Os
mobile Osmobile Os
mobile Os
 
Ios seminar
Ios seminarIos seminar
Ios seminar
 
Mobile OS Computer presentation
Mobile OS Computer presentationMobile OS Computer presentation
Mobile OS Computer presentation
 
Mac Operating System
Mac Operating SystemMac Operating System
Mac Operating System
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
 
Comparative Study On Mobile Operating Systems
  Comparative Study On Mobile Operating Systems   Comparative Study On Mobile Operating Systems
Comparative Study On Mobile Operating Systems
 
Mobile operating system
Mobile operating systemMobile operating system
Mobile operating system
 
Mobile Development Overview
Mobile Development OverviewMobile Development Overview
Mobile Development Overview
 
iOS I phone operating system
iOS I phone operating system iOS I phone operating system
iOS I phone operating system
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Windows Phone PPT
Windows Phone PPTWindows Phone PPT
Windows Phone PPT
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
Symbian Os
Symbian OsSymbian Os
Symbian Os
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..
 
iOS PPT
iOS PPTiOS PPT
iOS PPT
 
Comparison of mobile operating systems
Comparison of mobile operating systemsComparison of mobile operating systems
Comparison of mobile operating systems
 

Destaque

Symbian OS Overview
Symbian OS OverviewSymbian OS Overview
Symbian OS OverviewAndreas Jakl
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory ManagementAndreas Jakl
 
Alexander Oswald The Future of Maemo and Symbian
Alexander Oswald The Future of Maemo and SymbianAlexander Oswald The Future of Maemo and Symbian
Alexander Oswald The Future of Maemo and SymbianNokiaAppForum
 
Symbian Foundation Press Kit
Symbian Foundation Press KitSymbian Foundation Press Kit
Symbian Foundation Press KitAngela Barison
 
Jak zaktualizować swój telefon poprzez Nokia Suite.
Jak zaktualizować swój telefon poprzez Nokia Suite.Jak zaktualizować swój telefon poprzez Nokia Suite.
Jak zaktualizować swój telefon poprzez Nokia Suite.Nokia Poland
 
Symbian OS - Mopoid Next Gen - Slides
Symbian OS - Mopoid Next Gen - SlidesSymbian OS - Mopoid Next Gen - Slides
Symbian OS - Mopoid Next Gen - SlidesAndreas Jakl
 
D4 m symbian^3 ui & fresh theme
D4 m symbian^3 ui & fresh themeD4 m symbian^3 ui & fresh theme
D4 m symbian^3 ui & fresh themeScott Weiss
 
Symbian OS - GUI Architectures
Symbian OS - GUI ArchitecturesSymbian OS - GUI Architectures
Symbian OS - GUI ArchitecturesAndreas Jakl
 
Slackware
SlackwareSlackware
Slackwarephortos
 
Scheduling in symbian os
Scheduling in symbian os Scheduling in symbian os
Scheduling in symbian os Hasib Shaikh
 
Google Chrome - OS & BROWSER
Google Chrome - OS & BROWSERGoogle Chrome - OS & BROWSER
Google Chrome - OS & BROWSERFaheem Ahmed
 
Seminar report on Symbian OS
Seminar report on Symbian OSSeminar report on Symbian OS
Seminar report on Symbian OSDarsh Kotecha
 
Google chrome operating system
Google chrome operating systemGoogle chrome operating system
Google chrome operating systemkondalarao7
 

Destaque (19)

Symbian OS Overview
Symbian OS OverviewSymbian OS Overview
Symbian OS Overview
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory Management
 
Alexander Oswald The Future of Maemo and Symbian
Alexander Oswald The Future of Maemo and SymbianAlexander Oswald The Future of Maemo and Symbian
Alexander Oswald The Future of Maemo and Symbian
 
Symbian Foundation Press Kit
Symbian Foundation Press KitSymbian Foundation Press Kit
Symbian Foundation Press Kit
 
Jak zaktualizować swój telefon poprzez Nokia Suite.
Jak zaktualizować swój telefon poprzez Nokia Suite.Jak zaktualizować swój telefon poprzez Nokia Suite.
Jak zaktualizować swój telefon poprzez Nokia Suite.
 
Symbian OS - Mopoid Next Gen - Slides
Symbian OS - Mopoid Next Gen - SlidesSymbian OS - Mopoid Next Gen - Slides
Symbian OS - Mopoid Next Gen - Slides
 
D4 m symbian^3 ui & fresh theme
D4 m symbian^3 ui & fresh themeD4 m symbian^3 ui & fresh theme
D4 m symbian^3 ui & fresh theme
 
Slackware
SlackwareSlackware
Slackware
 
Symbian OS - GUI Architectures
Symbian OS - GUI ArchitecturesSymbian OS - GUI Architectures
Symbian OS - GUI Architectures
 
Slackware
SlackwareSlackware
Slackware
 
Google Chrome OS
Google Chrome OSGoogle Chrome OS
Google Chrome OS
 
Symbian os presentation
Symbian os presentationSymbian os presentation
Symbian os presentation
 
Google chrome OS
Google chrome OSGoogle chrome OS
Google chrome OS
 
Scheduling in symbian os
Scheduling in symbian os Scheduling in symbian os
Scheduling in symbian os
 
Google Chrome - OS & BROWSER
Google Chrome - OS & BROWSERGoogle Chrome - OS & BROWSER
Google Chrome - OS & BROWSER
 
Seminar report on Symbian OS
Seminar report on Symbian OSSeminar report on Symbian OS
Seminar report on Symbian OS
 
Google Chrome OS
Google Chrome OSGoogle Chrome OS
Google Chrome OS
 
Google chrome operating system
Google chrome operating systemGoogle chrome operating system
Google chrome operating system
 
Slackware Linux
Slackware LinuxSlackware Linux
Slackware Linux
 

Semelhante a Symbian Os Introduction

Semelhante a Symbian Os Introduction (20)

Symbianos 090510075232-phpapp01 (1)
Symbianos 090510075232-phpapp01 (1)Symbianos 090510075232-phpapp01 (1)
Symbianos 090510075232-phpapp01 (1)
 
Symbian OS
Symbian  OS Symbian  OS
Symbian OS
 
IT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTINGIT6601 MOBILE COMPUTING
IT6601 MOBILE COMPUTING
 
Symbian os
Symbian osSymbian os
Symbian os
 
01 Symbianosbasics Introducao
01 Symbianosbasics Introducao01 Symbianosbasics Introducao
01 Symbianosbasics Introducao
 
Manish solanki
Manish solankiManish solanki
Manish solanki
 
Operating system
Operating systemOperating system
Operating system
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptx
 
It6601 mobile computing unit 5
It6601 mobile computing unit 5It6601 mobile computing unit 5
It6601 mobile computing unit 5
 
Symbian OS
Symbian OSSymbian OS
Symbian OS
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212
 
DINESH SEMINAR 1 SYMBIAN OS landscape.pdf
DINESH SEMINAR 1 SYMBIAN OS landscape.pdfDINESH SEMINAR 1 SYMBIAN OS landscape.pdf
DINESH SEMINAR 1 SYMBIAN OS landscape.pdf
 
os.ppt
os.pptos.ppt
os.ppt
 
Android architechture
Android architechtureAndroid architechture
Android architechture
 
Android Introduction
Android IntroductionAndroid Introduction
Android Introduction
 
Operatingsystems
Operatingsystems Operatingsystems
Operatingsystems
 
Deep Dive into WinRT
Deep Dive into WinRTDeep Dive into WinRT
Deep Dive into WinRT
 
SYMBIAN MOBILE OPERATING SYSTEM.pptx
SYMBIAN MOBILE OPERATING SYSTEM.pptxSYMBIAN MOBILE OPERATING SYSTEM.pptx
SYMBIAN MOBILE OPERATING SYSTEM.pptx
 
01 what is android
01 what is android01 what is android
01 what is android
 
Blackberry Development Environment
Blackberry Development EnvironmentBlackberry Development Environment
Blackberry Development Environment
 

Symbian Os Introduction

  • 1. An Introduction to Symbian O.S. Presented By: Deepak Rathi PGDWTA-IV-2008 [C-DAC NOIDA]
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24. Using the Application Wizard...1
  • 25. Using the Application Wizard...2
  • 26. Using the Application Wizard...3 Application title will appear on the device Each application has a unique identifier
  • 27. Using the Application Wizard...4 Generated classes: - Application - Document - User interface - Container
  • 28. Using the Application Wizard...5 Generated directories: - C++ include files - C++ source files - group: Symbian project files - data, aif: resource files - install: installation files
  • 29.
  • 30. Generated Files GUI resources Project definition file Package definition file Source files
  • 31.
  • 32. Naming Conventions for Class Types...1 Category Examples Description T (“data type”) classes TDesC, TPoint, TFileName T classes don't have a destructor. They act like built-in types. No pointers, no resources C (“cleanup”) classes CConsoleBase, CActive, CBase Any class derived from CBase. C classes are allocated on heap. CBase also includes a virtual destructor, so that by calling delete on a CBase* pointer any C object it points to is properly destroyed.
  • 33. Naming Conventions for Class Types...2 Category Examples Description R (“resource/remote”) classes RFile, RTimer, RWriteStream, RWindow Client-side handle to an OS resource (file server, message server, etc.) M (“mixin”) classes/interface classes MGraphicsDevice-Map,MGameViewCmd-Handler, MEikMenuObserver An interface consisting of pure virtual functions. A class implementing this interface should derive from it. M classes are the only approved use of multiple inheritance in Symbian OS.
  • 34.
  • 35. Basic Data Types – Integers, Void, Boolean Boolean Void Signed Integer Unsigned Integer Name Size (bytes) Tint >=4 Tint8 1 Tint16 2 Tint32 4 Tint64 8 Name Size (bytes) TUint >=4 TUint8 1 TUint16 2 TUint32 4 Name Size TBool 4 Name Type TAny Void
  • 36. Basic Data Types-Floating Point, Characters Floating Point (avoid it) Character Name Size (bytes) TReal 8 TReal32 4 TReal64 8 TRealX 12 Name Size (bytes) TText8 1 TText 2 TText16 2 TChar 4
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46. Descriptor Classes Name Instatiable Modifiable Description TDesC No No abstract base class; argument passing and return values (const TDesC&) TDes No Yes abstract base class; argument passing return values (const TDes&) TBufC Yes No templated buffer descriptor: (size, data) stored together TPtrC Yes No pointer descriptor: (size, pointer) separate from data, data not owned TBuf Yes Yes templated buffer descriptor: (size, maximum size, data) stored together TPtr Yes Yes pointer descriptor: (size, maximum size, pointer) separate from data, data not owned HBufC Yes No heap descriptor: (size, maximum size, data) stored together on the heap
  • 47.
  • 48.
  • 49.
  • 50.
  • 52. Thank you for your endurance! ☺