SlideShare uma empresa Scribd logo
1 de 30
SYMBIAN OS
     -By Adit Pathak (09bce053)
     Faculty guide:- Vibha Patel
PRESENTATION FLOW
   Memory management
    -Leave & cleanup stack
 Socket Communication
 Security(Application signing)
 Application development
     -User interfaces
    -Tools required
    -Important files
    - Building,testing & installing application
MEMORY MANAGEMENT
   Systems with No Virtual Memory, no disk drive.
   These systems have two types of storage: RAM and flash
    memory.
   RAM stores the operating system code ;flash memory is
    used for both operating memory and permanent (file)
    storage. Often, it is possible to add extra flash memory to a
    device (such as a Secure Digital card), and this memory is
    used exclusively for permanent storage.
   RAM size is small as compared to PC: 32-64MB
   Dynamic memory allocation must be used
   No frequent rebooting
PROBLEMS IN DYNAMIC MEMORY ALLOCATION

   Have to release memory as soon as possible
   Nested function calls , in which fn calls another fn which in
    turn calls another & so on.
   Problem occurs when every fn allocates memory for class
    object
   At every allocation memory allocation errors must be
    checked.
   If fn at the bottom of this nested calls can’t allocate memory
    then it will return error value ,which in turn return error value
    to its calling fn & previously allocated memory must be
    released.So code becomes complex.
LEAVE AND TRAPD
   Use of leave & trap will solve the problem
   Whenever allocation fails fn leaves
   It leaves all fn in sequence untill it finds TRAPD()
   TRAPD(error,HandleKeyL());



   PROBLEM
       -> Memory allocated by calling fn in sequence is not
    freed
 case Use3:
 {
   CX* x=new (Eleave) CX;
   x->UseL();
   delete x;
   }
 Void CX::UseL()
   {
    Tint* pi=new (Eleave) Tint;
    delete pi;
     }
 No problem if cx fails
 But there is problem if UseL() leaves
CLEANUP STACK
 Stack which is cleaned automatically when leave occurs
 case Use3:

 {
   CX* x=new (Eleave) CX;
   CleanupStack::PushL(x);
   x->UseL();
   CleanupStack::PopandDestroy(x);
   }
SOCKET COMMUNICATION
   Sockets API have become the standard API in
    establishment of TCP/IP connection on many platforms
    including Symbian.
   Symbian can use sockets API to establish a connection of
    infrared, Bluetooth and other protocols.
   Socket in the network represents a communication path
    endpoint.
   Endpoint is identified by the IP address of the machine with
    a combination of a port address.
   The communication between two end points is called a
    channel.
CLIENT API CLASSES
    RSocketServ : creates session with socket server, used for establishing
     subsessions for RSocket & RHostResolver. To establish a session with
     socket server the member function RSocketServ::Connect() is used.
     RSocketServ::Close() closes all subsessions automatically.

    Rsocket : the endpoint of socket based communication.Each
     instantiated object of this class represents a single socket.It allows:
    -Socket opening
    -Read-write data from/to prorocol

    RHostResolver: provides the interface for host resolution services

    RConnection: selects internet access point. It supports
     multiholming(Several
      network interfaces active at the same time).
STEPS FOR TCP/IP USING SOCKET
   Create a connection to socket server    (RSocketServ)
   Choose Internet access point             (RConnection)
   Send DNS-request                        (RHostResolver)
   Close connection to DNS resolver       (RHostResolver)
   Open TCP socket                         (RSocket)
   Connection request+ target IP          (RSocket)
   Data Transfer                          (RSocket)
   Close Socket                           (RSocket)
   Close connection                       (RConnection)
   Close socket server connection         (RSocketServ)
SECURITY IN SYMBIAN OS
   Smartphones are single-user devices and require no user
    authentication to use basic functions.
   Even more complicated functions (such as installing
    applications) require authorization but no authentication

   Gatekeeper security before version 9
   User was asked for permission before installing application ,user was
    trusted to use them wisely
   The thinking in this design was that only user-installed applications could
    cause system havoc and an informed user would know what programs
    he intended to install and what programs were malicious
   A new smartphone with no user-installed applications would be a system
    that could run without error.
   Installing only applications that a user knew were not malicious would
    maintain the security of the system.
   problem with this design is that users do not always know
    the complete ramifications of the software they are installing
   There are viruses that masquerade as useful programs,
    performing useful functions while silently installing malicious
    code.
   Normal users are unable to verify the complete
    trustworthiness of all the software available.
   Platform Security Architecture(PSA) for version
    9
   verification of trust prompted a complete redesign of
    platform security for Symbian OS version 9 which keeps the
    gatekeeper model, but takes the responsibility for verifying
    software away from the user
PSA & APPLICATION SIGNING
   Each software developer is now responsible for verifying her
    own software through a process called signing and the
    system verifies the developer’s claim
   Not all software requires such verification, only those that
    access certain system functions.
   Self signing (no capabilities or unrestricted capabilities)
   When certain capabilities are required the application must
    be signed
STEPS IN APPLICATION SIGNING
   When a developer has developed a software package and want
    to distribute it, he or she must submit his package to a trusted
    third party for validation.
   The trusted third party then verifies that the list of software access
    types is complete and that no other type of access occurs. If this
    third party can make this verification, the software is then signed
    by that third party. This means that the installation package has a
    special amount of information that details what it will do to a
    Symbian OS system and that it may actually do that.
   This installation package is sent back to the software developer
    and may now be distributed to users.(sisx file)

   The install process checks the signage of the installation
    package. If the signing of the package is valid, the capabilities
    granted the software are recorded and these are the capabilities
    granted to the application by the kernel when it executes.
DIFFERENT LEVELS OF TRUST
APPLICATION DEVELOPMENT

 User interfaces
    ->S60
    -> UIQ
 What is needed

 Different files

 Building and testing

 Installing on phone
USER INTERFACES –S60
   The S60 Platform is a software platform for mobile phones that runs
    on symbian os.
   S60 has been designed for easy one-handed use.
   All S60 phones use a navigation controller that allows navigation in four
    direction,a confirmation key & 2 hardware buttons called softkeys.
   S60 has 4 versions:s601,2,3 & 5.


Edition                                Devices

S60 1st                                Nokia 7650,3600,3620

S60 2nd                                Nokia 6600,Panasonic x700,Samsung
                                       SGH-D720

S60 3rd                                Nokia 3250,N73,N71,E60

S60 5th                                Nokia 5233,5800,C6-00
S60 PHONE




   Screenshot of a typical
   Nokia S60 user
   interface.
USER INTERFACES – UIQ
   UIQ (formerly known as User Interface Quartz) is a software
    platform based upon Symbian os.
   UIQ phones employ touch screens with a resolution of 208×320 pixels
    (UIQ 1.x & 2.x) and 240×320 (UIQ 3.x). Depending on the phone,
    the color depth is 12-bit (4096 colors), 16-bit (65536 colors), 18-bit
    (262144 colors), and 24-bit (16,777,216 colors) on some newer phones.
    It can be configured with respect to touch/non-touch screens, screen
    size, the use of a menu bar or the use of soft keys.

Edition                               Devices


UIQ 2.x                               Nokia 6708,sony ericsson p800,motorola
                                      A920,A925
UIQ 3.x                               Sony ericsson M600,P1,P990,G700
                                      Motorola RIZR Z8,Z10
UIQ PHONES




  Screenshot of a typical UIQ 3 user
  interface.
WHAT IS NEEDED?
   a PC running Windows NT or better
   an SDK (S60 or UIQ) which will contain emulator
   a C++ development IDE supported by your SDK.(eg.
    Carbide.c++)
   the appropriate phone handset on which to test your
    application
   The ability to deploy code onto the phone (for example, a
    removable media card, for example, MMC or Memory Stick,
    or a connection between your development PC and the
    handset using USB or Bluetooth).
DIFFERENT FILES
   Creating project using carbide.c++

   It will create different file for skeleton application

   Files in different directories

   Group- .mmp & bld.inf file, src- .cpp source files , data-
    resource file, inc-headerfiles , sis- .pkg ,.sis,.sisx files
.MMP FILE
   A project definition file (.mmp file) that describes a project to be built.
    This is an environment neutral file that can be used by the tools to
    produce make files for any of the supported target environments. It also
    defines resource files to be built.
BLD.INF FILE
   A component description file (bld.inf), which lists a group of related
    projects, and gives additional build instructions.
   Its main purpose is to list the project definition mmp files and any files
    that the build tools must copy into place before a build.
APPLICATION FRAMEWORK
   Every Symbian OS GUI application, regardless of the UI platform on
    which it is based, will use the application framework architecture, which
    means it will derive from a particular set of UI-specific classes:
    application, document, application UI and application view.

   Application: When instantiated, the object is used to identify the
    application, by returning its UID. It also creates the application’s
    document class.
   Application Document: :The document class handles any persistent
    non-GUI data for the application and instantiates the application UI
    class.
   Application UI: The application UI handles UI events generated from
    the user’s actions (except low-level touch screen events and
    alphanumeric keyboard input). It also instantiates the application’s
    default view.
   Application view: This is the root GUI control which activates the main
    application window and acts as a container for other controls used.
BUILDING & TESTING
   Select build target- emulator debug or phone release
   To run,right click on project select run as symbian os c++
    project.
   It will open emulator
INSTALLING ON PHONE
   Go to .pkg file in project navigator
   Right click & select build package
   It will self sign the application & .sisx file will be
    created.
   Transfer to phone using data cable,bluetooth etc &
    install it
REFERENCES
   [1] Advanced Symbian OS C++:Programming mobile Phones, by Richard
    Harrison
   [2] Modern operating system, by Andrew S. Tanunbum
   [3] Symbian Os Explained:effective C++ Programming for Smartphones, by Jo
    Stichbury
   [4] Symbian OS C++ for mobile phones, by Richard Harrison, Mark Shackman
   [5] en.wikipedia.org/wiki/Symbian
   [6] library.developer.nokia.com/...Developers.../index.html
   [7] E-Pass Using DRM in Symbian v8 OS and TrustZone : Securing Vital Data
    on
       Mobile Devices, by Wan Huzaini Wan Hussin, Reuben Edwards and Paul
    Coulton
   [8] Testing the Symbian OS Platform Security Architecture ,byThomas Badura
    and Michael Becher,University of Mannheim, Germany
   [9] File Transmission via socket from Smartphone to PC Based on Symbian OS,
    by LinChunmin,LuoDelin,WuShunxiang
THANK YOU

Mais conteúdo relacionado

Mais procurados

Symbian mobile operating system ppt
Symbian mobile operating system pptSymbian mobile operating system ppt
Symbian mobile operating system pptDevesh Singh
 
android vs symbian
android  vs symbianandroid  vs symbian
android vs symbianAJAL A J
 
Introduction to Symbian OS
Introduction to Symbian OSIntroduction to Symbian OS
Introduction to Symbian OSHatem Mahmoud
 
Symbian OS - Platform Security
Symbian OS - Platform SecuritySymbian OS - Platform Security
Symbian OS - Platform SecurityAndreas Jakl
 
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.pdfamiti dinesh
 
Mobile operating system ppt
Mobile operating system pptMobile operating system ppt
Mobile operating system pptSantosh Kumar
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..Aashish Uppal
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systemsSriram PV
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory ManagementAndreas Jakl
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating SystemsAndreas Jakl
 
Android : a linux-based mobile operating system
Android : a linux-based mobile operating systemAndroid : a linux-based mobile operating system
Android : a linux-based mobile operating systemClément Escoffier
 
Different type of Mobile operating systems
Different type of Mobile operating systems Different type of Mobile operating systems
Different type of Mobile operating systems Gaurav Garg
 
Report in Operations and Research (OPERSEA) — STI College Bacolod
Report in Operations and Research (OPERSEA) — STI College BacolodReport in Operations and Research (OPERSEA) — STI College Bacolod
Report in Operations and Research (OPERSEA) — STI College BacolodEphramar Telog
 

Mais procurados (20)

Symbian mobile operating system ppt
Symbian mobile operating system pptSymbian mobile operating system ppt
Symbian mobile operating system ppt
 
Symbian OS
Symbian OSSymbian OS
Symbian OS
 
android vs symbian
android  vs symbianandroid  vs symbian
android vs symbian
 
Introduction to Symbian OS
Introduction to Symbian OSIntroduction to Symbian OS
Introduction to Symbian OS
 
Symbian OS
Symbian OSSymbian OS
Symbian OS
 
Symbian Os
Symbian OsSymbian Os
Symbian Os
 
Symbian OS - Platform Security
Symbian OS - Platform SecuritySymbian OS - Platform Security
Symbian OS - Platform Security
 
Symbian OS
Symbian OSSymbian OS
Symbian OS
 
Symbian os presentation
Symbian os presentationSymbian os presentation
Symbian os presentation
 
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
 
Symbian OS
Symbian OSSymbian OS
Symbian OS
 
Symbian os
Symbian osSymbian os
Symbian os
 
Mobile operating system ppt
Mobile operating system pptMobile operating system ppt
Mobile operating system ppt
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
Symbian OS - Memory Management
Symbian OS - Memory ManagementSymbian OS - Memory Management
Symbian OS - Memory Management
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
 
Android : a linux-based mobile operating system
Android : a linux-based mobile operating systemAndroid : a linux-based mobile operating system
Android : a linux-based mobile operating system
 
Different type of Mobile operating systems
Different type of Mobile operating systems Different type of Mobile operating systems
Different type of Mobile operating systems
 
Report in Operations and Research (OPERSEA) — STI College Bacolod
Report in Operations and Research (OPERSEA) — STI College BacolodReport in Operations and Research (OPERSEA) — STI College Bacolod
Report in Operations and Research (OPERSEA) — STI College Bacolod
 

Destaque

Symbionic os
Symbionic osSymbionic os
Symbionic osbhavithd
 
Chrome OS Observation
Chrome OS ObservationChrome OS Observation
Chrome OS ObservationChamp Yen
 
Chrome OS: The Stateless Operating System
Chrome OS: The Stateless Operating SystemChrome OS: The Stateless Operating System
Chrome OS: The Stateless Operating SystemChatchai Wangwiwattana
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome osdevaj kumar
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome osakoyena
 
Scheduling in symbian os
Scheduling in symbian os Scheduling in symbian os
Scheduling in symbian os Hasib Shaikh
 
Introduction To Google Chrome Os
Introduction To Google Chrome OsIntroduction To Google Chrome Os
Introduction To Google Chrome OsSaurabh Jinturkar
 
Harvard architecture
Harvard architectureHarvard architecture
Harvard architectureGichelle Amon
 
Google Chrome - OS & BROWSER
Google Chrome - OS & BROWSERGoogle Chrome - OS & BROWSER
Google Chrome - OS & BROWSERFaheem Ahmed
 
An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........VAST TRICHUR
 
presentacion GOOGLE CHROME
presentacion GOOGLE CHROMEpresentacion GOOGLE CHROME
presentacion GOOGLE CHROMEguestbf57cc
 
Harvard architecture
Harvard architectureHarvard architecture
Harvard architectureCarmen Ugay
 
Role of IT in environment & Human Health
Role of IT in environment & Human HealthRole of IT in environment & Human Health
Role of IT in environment & Human HealthTanvi Potluri
 
Google chrome operating system
Google chrome operating systemGoogle chrome operating system
Google chrome operating systemkondalarao7
 

Destaque (20)

Symbionic os
Symbionic osSymbionic os
Symbionic os
 
Part 2
Part 2Part 2
Part 2
 
Chrome OS Observation
Chrome OS ObservationChrome OS Observation
Chrome OS Observation
 
Chrome OS: The Stateless Operating System
Chrome OS: The Stateless Operating SystemChrome OS: The Stateless Operating System
Chrome OS: The Stateless Operating System
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome os
 
Google chrome os
Google chrome osGoogle chrome os
Google chrome os
 
Google chrome
Google chromeGoogle chrome
Google chrome
 
Chrome os
Chrome os Chrome os
Chrome os
 
Scheduling in symbian os
Scheduling in symbian os Scheduling in symbian os
Scheduling in symbian os
 
Introduction To Google Chrome Os
Introduction To Google Chrome OsIntroduction To Google Chrome Os
Introduction To Google Chrome Os
 
Harvard architecture
Harvard architectureHarvard architecture
Harvard architecture
 
Google Chrome - OS & BROWSER
Google Chrome - OS & BROWSERGoogle Chrome - OS & BROWSER
Google Chrome - OS & BROWSER
 
Chrome O.S.
Chrome O.S.Chrome O.S.
Chrome O.S.
 
An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........An Introduction to Google Chrome OS..........
An Introduction to Google Chrome OS..........
 
Google Chrome OS
Google Chrome OSGoogle Chrome OS
Google Chrome OS
 
presentacion GOOGLE CHROME
presentacion GOOGLE CHROMEpresentacion GOOGLE CHROME
presentacion GOOGLE CHROME
 
Google chrome
Google chromeGoogle chrome
Google chrome
 
Harvard architecture
Harvard architectureHarvard architecture
Harvard architecture
 
Role of IT in environment & Human Health
Role of IT in environment & Human HealthRole of IT in environment & Human Health
Role of IT in environment & Human Health
 
Google chrome operating system
Google chrome operating systemGoogle chrome operating system
Google chrome operating system
 

Semelhante a Symbian OS

Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212Yoojoo Jang
 
Open Kode, Airplay And The New Reality Of Write Once Run Anywhere
Open Kode, Airplay And The New Reality Of Write Once Run AnywhereOpen Kode, Airplay And The New Reality Of Write Once Run Anywhere
Open Kode, Airplay And The New Reality Of Write Once Run Anywhereguest991eb3
 
600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security Model600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security ModelMichael Rushanan
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment pptsagaroceanic11
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment pptsagaroceanic11
 
An Instantaneous Introduction to the Alliance Access Grid
An Instantaneous Introduction to the Alliance Access GridAn Instantaneous Introduction to the Alliance Access Grid
An Instantaneous Introduction to the Alliance Access GridVideoguy
 
Native Application Development With Qt
Native Application Development With QtNative Application Development With Qt
Native Application Development With Qtrahulnimbalkar
 
MicroEJ, the OS for IoT
MicroEJ, the OS for IoTMicroEJ, the OS for IoT
MicroEJ, the OS for IoTMicroEJ
 
MicroEJ OS for IoT devices
MicroEJ OS for IoT devicesMicroEJ OS for IoT devices
MicroEJ OS for IoT devicescharlotte75009
 
Runtime 8 and Windows Phone 8
Runtime 8 and Windows Phone 8Runtime 8 and Windows Phone 8
Runtime 8 and Windows Phone 8Damir Dobric
 
(Download)
(Download)(Download)
(Download)Videoguy
 
tranning synopsis(java programming).pdf
tranning synopsis(java programming).pdftranning synopsis(java programming).pdf
tranning synopsis(java programming).pdfsumitgiri32
 
outpass system
outpass systemoutpass system
outpass systemDhivakar K
 
What is new in InduSoft Web Studio v7.0?
What is new in InduSoft Web Studio v7.0?What is new in InduSoft Web Studio v7.0?
What is new in InduSoft Web Studio v7.0?AVEVA
 
Virtual network computing
Virtual network computingVirtual network computing
Virtual network computing3608106
 

Semelhante a Symbian OS (20)

56_Implementation
56_Implementation56_Implementation
56_Implementation
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212
 
Open Kode, Airplay And The New Reality Of Write Once Run Anywhere
Open Kode, Airplay And The New Reality Of Write Once Run AnywhereOpen Kode, Airplay And The New Reality Of Write Once Run Anywhere
Open Kode, Airplay And The New Reality Of Write Once Run Anywhere
 
600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security Model600.250 UI Cross Platform Development and the Android Security Model
600.250 UI Cross Platform Development and the Android Security Model
 
Remote Web Desk
Remote Web DeskRemote Web Desk
Remote Web Desk
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment ppt
 
I phone app develoment ppt
I phone app develoment   pptI phone app develoment   ppt
I phone app develoment ppt
 
An Instantaneous Introduction to the Alliance Access Grid
An Instantaneous Introduction to the Alliance Access GridAn Instantaneous Introduction to the Alliance Access Grid
An Instantaneous Introduction to the Alliance Access Grid
 
ACTAtek unique features
ACTAtek unique featuresACTAtek unique features
ACTAtek unique features
 
Backtrack Manual Part4
Backtrack Manual Part4Backtrack Manual Part4
Backtrack Manual Part4
 
Native Application Development With Qt
Native Application Development With QtNative Application Development With Qt
Native Application Development With Qt
 
MicroEJ, the OS for IoT
MicroEJ, the OS for IoTMicroEJ, the OS for IoT
MicroEJ, the OS for IoT
 
MicroEJ OS for IoT devices
MicroEJ OS for IoT devicesMicroEJ OS for IoT devices
MicroEJ OS for IoT devices
 
Runtime 8 and Windows Phone 8
Runtime 8 and Windows Phone 8Runtime 8 and Windows Phone 8
Runtime 8 and Windows Phone 8
 
Android
AndroidAndroid
Android
 
(Download)
(Download)(Download)
(Download)
 
tranning synopsis(java programming).pdf
tranning synopsis(java programming).pdftranning synopsis(java programming).pdf
tranning synopsis(java programming).pdf
 
outpass system
outpass systemoutpass system
outpass system
 
What is new in InduSoft Web Studio v7.0?
What is new in InduSoft Web Studio v7.0?What is new in InduSoft Web Studio v7.0?
What is new in InduSoft Web Studio v7.0?
 
Virtual network computing
Virtual network computingVirtual network computing
Virtual network computing
 

Último

Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...Pooja Nehwal
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 

Último (20)

INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 

Symbian OS

  • 1. SYMBIAN OS -By Adit Pathak (09bce053) Faculty guide:- Vibha Patel
  • 2. PRESENTATION FLOW  Memory management -Leave & cleanup stack  Socket Communication  Security(Application signing)  Application development -User interfaces -Tools required -Important files - Building,testing & installing application
  • 3. MEMORY MANAGEMENT  Systems with No Virtual Memory, no disk drive.  These systems have two types of storage: RAM and flash memory.  RAM stores the operating system code ;flash memory is used for both operating memory and permanent (file) storage. Often, it is possible to add extra flash memory to a device (such as a Secure Digital card), and this memory is used exclusively for permanent storage.  RAM size is small as compared to PC: 32-64MB  Dynamic memory allocation must be used  No frequent rebooting
  • 4. PROBLEMS IN DYNAMIC MEMORY ALLOCATION  Have to release memory as soon as possible  Nested function calls , in which fn calls another fn which in turn calls another & so on.  Problem occurs when every fn allocates memory for class object  At every allocation memory allocation errors must be checked.  If fn at the bottom of this nested calls can’t allocate memory then it will return error value ,which in turn return error value to its calling fn & previously allocated memory must be released.So code becomes complex.
  • 5. LEAVE AND TRAPD  Use of leave & trap will solve the problem  Whenever allocation fails fn leaves  It leaves all fn in sequence untill it finds TRAPD()  TRAPD(error,HandleKeyL());  PROBLEM -> Memory allocated by calling fn in sequence is not freed
  • 6.  case Use3: { CX* x=new (Eleave) CX; x->UseL(); delete x; }  Void CX::UseL() { Tint* pi=new (Eleave) Tint; delete pi; }  No problem if cx fails  But there is problem if UseL() leaves
  • 7. CLEANUP STACK  Stack which is cleaned automatically when leave occurs  case Use3: { CX* x=new (Eleave) CX; CleanupStack::PushL(x); x->UseL(); CleanupStack::PopandDestroy(x); }
  • 8. SOCKET COMMUNICATION  Sockets API have become the standard API in establishment of TCP/IP connection on many platforms including Symbian.  Symbian can use sockets API to establish a connection of infrared, Bluetooth and other protocols.  Socket in the network represents a communication path endpoint.  Endpoint is identified by the IP address of the machine with a combination of a port address.  The communication between two end points is called a channel.
  • 9. CLIENT API CLASSES  RSocketServ : creates session with socket server, used for establishing subsessions for RSocket & RHostResolver. To establish a session with socket server the member function RSocketServ::Connect() is used. RSocketServ::Close() closes all subsessions automatically.  Rsocket : the endpoint of socket based communication.Each instantiated object of this class represents a single socket.It allows: -Socket opening -Read-write data from/to prorocol  RHostResolver: provides the interface for host resolution services  RConnection: selects internet access point. It supports multiholming(Several network interfaces active at the same time).
  • 10. STEPS FOR TCP/IP USING SOCKET  Create a connection to socket server (RSocketServ)  Choose Internet access point (RConnection)  Send DNS-request (RHostResolver)  Close connection to DNS resolver (RHostResolver)  Open TCP socket (RSocket)  Connection request+ target IP (RSocket)  Data Transfer (RSocket)  Close Socket (RSocket)  Close connection (RConnection)  Close socket server connection (RSocketServ)
  • 11. SECURITY IN SYMBIAN OS  Smartphones are single-user devices and require no user authentication to use basic functions.  Even more complicated functions (such as installing applications) require authorization but no authentication  Gatekeeper security before version 9  User was asked for permission before installing application ,user was trusted to use them wisely  The thinking in this design was that only user-installed applications could cause system havoc and an informed user would know what programs he intended to install and what programs were malicious  A new smartphone with no user-installed applications would be a system that could run without error.  Installing only applications that a user knew were not malicious would maintain the security of the system.
  • 12. problem with this design is that users do not always know the complete ramifications of the software they are installing  There are viruses that masquerade as useful programs, performing useful functions while silently installing malicious code.  Normal users are unable to verify the complete trustworthiness of all the software available.  Platform Security Architecture(PSA) for version 9  verification of trust prompted a complete redesign of platform security for Symbian OS version 9 which keeps the gatekeeper model, but takes the responsibility for verifying software away from the user
  • 13. PSA & APPLICATION SIGNING  Each software developer is now responsible for verifying her own software through a process called signing and the system verifies the developer’s claim  Not all software requires such verification, only those that access certain system functions.  Self signing (no capabilities or unrestricted capabilities)  When certain capabilities are required the application must be signed
  • 14. STEPS IN APPLICATION SIGNING  When a developer has developed a software package and want to distribute it, he or she must submit his package to a trusted third party for validation.  The trusted third party then verifies that the list of software access types is complete and that no other type of access occurs. If this third party can make this verification, the software is then signed by that third party. This means that the installation package has a special amount of information that details what it will do to a Symbian OS system and that it may actually do that.  This installation package is sent back to the software developer and may now be distributed to users.(sisx file)  The install process checks the signage of the installation package. If the signing of the package is valid, the capabilities granted the software are recorded and these are the capabilities granted to the application by the kernel when it executes.
  • 16. APPLICATION DEVELOPMENT  User interfaces ->S60 -> UIQ  What is needed  Different files  Building and testing  Installing on phone
  • 17. USER INTERFACES –S60  The S60 Platform is a software platform for mobile phones that runs on symbian os.  S60 has been designed for easy one-handed use.  All S60 phones use a navigation controller that allows navigation in four direction,a confirmation key & 2 hardware buttons called softkeys.  S60 has 4 versions:s601,2,3 & 5. Edition Devices S60 1st Nokia 7650,3600,3620 S60 2nd Nokia 6600,Panasonic x700,Samsung SGH-D720 S60 3rd Nokia 3250,N73,N71,E60 S60 5th Nokia 5233,5800,C6-00
  • 18. S60 PHONE Screenshot of a typical Nokia S60 user interface.
  • 19. USER INTERFACES – UIQ  UIQ (formerly known as User Interface Quartz) is a software platform based upon Symbian os.  UIQ phones employ touch screens with a resolution of 208×320 pixels (UIQ 1.x & 2.x) and 240×320 (UIQ 3.x). Depending on the phone, the color depth is 12-bit (4096 colors), 16-bit (65536 colors), 18-bit (262144 colors), and 24-bit (16,777,216 colors) on some newer phones.  It can be configured with respect to touch/non-touch screens, screen size, the use of a menu bar or the use of soft keys. Edition Devices UIQ 2.x Nokia 6708,sony ericsson p800,motorola A920,A925 UIQ 3.x Sony ericsson M600,P1,P990,G700 Motorola RIZR Z8,Z10
  • 20. UIQ PHONES Screenshot of a typical UIQ 3 user interface.
  • 21. WHAT IS NEEDED?  a PC running Windows NT or better  an SDK (S60 or UIQ) which will contain emulator  a C++ development IDE supported by your SDK.(eg. Carbide.c++)  the appropriate phone handset on which to test your application  The ability to deploy code onto the phone (for example, a removable media card, for example, MMC or Memory Stick, or a connection between your development PC and the handset using USB or Bluetooth).
  • 22. DIFFERENT FILES  Creating project using carbide.c++  It will create different file for skeleton application  Files in different directories  Group- .mmp & bld.inf file, src- .cpp source files , data- resource file, inc-headerfiles , sis- .pkg ,.sis,.sisx files
  • 23. .MMP FILE  A project definition file (.mmp file) that describes a project to be built. This is an environment neutral file that can be used by the tools to produce make files for any of the supported target environments. It also defines resource files to be built.
  • 24. BLD.INF FILE  A component description file (bld.inf), which lists a group of related projects, and gives additional build instructions.  Its main purpose is to list the project definition mmp files and any files that the build tools must copy into place before a build.
  • 25. APPLICATION FRAMEWORK  Every Symbian OS GUI application, regardless of the UI platform on which it is based, will use the application framework architecture, which means it will derive from a particular set of UI-specific classes: application, document, application UI and application view.  Application: When instantiated, the object is used to identify the application, by returning its UID. It also creates the application’s document class.  Application Document: :The document class handles any persistent non-GUI data for the application and instantiates the application UI class.  Application UI: The application UI handles UI events generated from the user’s actions (except low-level touch screen events and alphanumeric keyboard input). It also instantiates the application’s default view.  Application view: This is the root GUI control which activates the main application window and acts as a container for other controls used.
  • 26. BUILDING & TESTING  Select build target- emulator debug or phone release  To run,right click on project select run as symbian os c++ project.  It will open emulator
  • 27.
  • 28. INSTALLING ON PHONE  Go to .pkg file in project navigator  Right click & select build package  It will self sign the application & .sisx file will be created.  Transfer to phone using data cable,bluetooth etc & install it
  • 29. REFERENCES  [1] Advanced Symbian OS C++:Programming mobile Phones, by Richard Harrison  [2] Modern operating system, by Andrew S. Tanunbum  [3] Symbian Os Explained:effective C++ Programming for Smartphones, by Jo Stichbury  [4] Symbian OS C++ for mobile phones, by Richard Harrison, Mark Shackman  [5] en.wikipedia.org/wiki/Symbian  [6] library.developer.nokia.com/...Developers.../index.html  [7] E-Pass Using DRM in Symbian v8 OS and TrustZone : Securing Vital Data on Mobile Devices, by Wan Huzaini Wan Hussin, Reuben Edwards and Paul Coulton  [8] Testing the Symbian OS Platform Security Architecture ,byThomas Badura and Michael Becher,University of Mannheim, Germany  [9] File Transmission via socket from Smartphone to PC Based on Symbian OS, by LinChunmin,LuoDelin,WuShunxiang