SlideShare una empresa de 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! ☺

Más contenido relacionado

La actualidad más candente

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 OS Computer presentation
Mobile OS Computer presentationMobile OS Computer presentation
Mobile OS Computer presentation
Md Rabius Sany
 
Alphorm.com Formation Blockchain : Découvrir les fondamentaux
Alphorm.com Formation Blockchain : Découvrir les fondamentauxAlphorm.com Formation Blockchain : Découvrir les fondamentaux
Alphorm.com Formation Blockchain : Découvrir les fondamentaux
Alphorm
 

La actualidad más candente (20)

Android & IOS
Android & IOSAndroid & IOS
Android & IOS
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
mobile Os
mobile Osmobile Os
mobile Os
 
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 OS Computer presentation
Mobile OS Computer presentationMobile OS Computer presentation
Mobile OS Computer presentation
 
Apple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating systemApple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating system
 
iOS I phone operating system
iOS I phone operating system iOS I phone operating system
iOS I phone operating system
 
Android 10
Android 10Android 10
Android 10
 
Présentation ios Ragheb Gmira
Présentation ios  Ragheb GmiraPrésentation ios  Ragheb Gmira
Présentation ios Ragheb Gmira
 
Android Virtualization: Opportunity and Organization
Android Virtualization: Opportunity and OrganizationAndroid Virtualization: Opportunity and Organization
Android Virtualization: Opportunity and Organization
 
PPT on iOS
PPT on iOS PPT on iOS
PPT on iOS
 
Symbian OS Overview
Symbian OS OverviewSymbian OS Overview
Symbian OS Overview
 
Symbian OS
Symbian OSSymbian OS
Symbian OS
 
Ios seminar
Ios seminarIos seminar
Ios seminar
 
Window Phone
Window PhoneWindow Phone
Window Phone
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory Management
 
Présentation ubuntu 12.10 PDF
Présentation ubuntu  12.10 PDFPrésentation ubuntu  12.10 PDF
Présentation ubuntu 12.10 PDF
 
Alphorm.com Formation Blockchain : Découvrir les fondamentaux
Alphorm.com Formation Blockchain : Découvrir les fondamentauxAlphorm.com Formation Blockchain : Découvrir les fondamentaux
Alphorm.com Formation Blockchain : Découvrir les fondamentaux
 
Learning AOSP - Android Linux Device Driver
Learning AOSP - Android Linux Device DriverLearning AOSP - Android Linux Device Driver
Learning AOSP - Android Linux Device Driver
 
Evolution of Android Update Principles
Evolution of Android Update PrinciplesEvolution of Android Update Principles
Evolution of Android Update Principles
 

Destacado

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 - Slides
Andreas Jakl
 
Slackware
SlackwareSlackware
Slackware
phortos
 
Google chrome operating system
Google chrome operating systemGoogle chrome operating system
Google chrome operating system
kondalarao7
 

Destacado (18)

Symbian Operating system
Symbian Operating systemSymbian Operating system
Symbian Operating system
 
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
 

Similar a Symbian Os Introduction

01 Symbianosbasics Introducao
01 Symbianosbasics Introducao01 Symbianosbasics Introducao
01 Symbianosbasics Introducao
Tiago Romão
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212
Yoojoo Jang
 
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
amiti dinesh
 
Operatingsystems
Operatingsystems Operatingsystems
Operatingsystems
kuldeepy60
 

Similar 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! ☺