SlideShare una empresa de Scribd logo
1 de 42
Descargar para leer sin conexión
Mobile Operating Systems:
        Android
         Nicos Demetriou

    SONAR – Fall Semester 2012
Outline
• Historical Development
• Mobile OS in market
• Android OS
  –   Introduction
  –   Architecture
  –   Application Development
  –   Filesystem
  –   Boot process
• Hardware
• Focus on

                                2
Historical Development
•   1973 – First mobile phone device by Motorola
•   1978 – Advanced Mobile Phone System (1G)
•   1990 – GMS standard (2G)
•   1993 – First smartphone by IBM with touch screen
•   1996 – Windows CE Handheld device
•   1998 – Psion Company develops Symbian
•   1999 – First Nokia phone with Symbian S40 (7110)
•   2002 – First smartphone by BlackBerry
•   2002 – 3G telecommunication technology
•   2007 – Apple iPhone with iOS introduced
•   2008 – Android 1.0 with the HTC Dream
•   2010 – Microsoft launches Windows Phone OS
•   2011 – MeeGo first Linux mobile by Nokia, Intel and Linux Foundation
                                                                           3
Mobile OS in the market
– Manufacturer-built proprietary OS
   • Apple iOS, BlackBerry RIM, HP webOS
– Third party proprietary OS
   • Microsoft Windows Phone 7
– Open source OS
   • Android
   • MeeGo
   • Symbian




                                           4
Android OS - Introduction
• Linux-based (v2.6 Kernel), open source, free
• Operating system, middleware and key mobile
  applications
• Originally founded by Android Inc. in 2003
• Purchased and developed by Google since 2005
• Open Handset Alliance
• Apache v2 license



                                                 5
Open Handset Alliance




                        6
Android OS
• Other uses of Android OS
                                     Ouya




            Android@Home


Cameras
                                        Project Glass




                      Wristwatches
                                                        7
8
Android OS - Architecture




                            9
Android OS - Architecture
• Linux Kernel (2.6.24)
  – Android is not Linux
  – Only kernel portion of Linux
  – Enchancements to support Android
  – GNU utility packages ported to ARM
  – Abstraction layer between Hardware and Software
  – No native windowing system (X11)



                                                      10
Android OS - Architecture
• Binder Driver
  – InterProcess Communication between
    applications
  – Map process memory address to kernel address
  – ioctl()
  – Synchronous calls between processes
  – AIDL (Android Interface Definition Language)



                                                   11
Android OS - Architecture
• Binder in action




                                  12
Android OS - Architecture
• Power Management
  – Battery power Limited capacity
  – Built on top of Linux PM
  – Wake locks – keep power on
    •   PARTIAL_WAKE_LOCK (CPU on, screen/keyboard off)
    •   SCREEN_DIM_WAKE_LOCK (CPU on, screen dim, keyboard off)
    •   SCREEN_BRIGHT_WAKE_LOCK (CPU on, screen bright, kb off)
    •   FULL_WAKE_LOCK (CPU on, screen on, keyboard bright)



                                                                  13
Android OS - Architecture
• Power Management in action




                                  14
Android OS - Architecture
• Other kernel features
  – Android shared memory (ashmem)
  – Process memory allocator (pmem)
  – System logging facility (logger)
  – Alarm timers
  – Paranoid network security
  – RAM_CONSOLE (save kernel messages to RAM)



                                                15
Android OS - Architecture
• Native Libraries (C/C++ libraries)
  – Custom libc: Bionic
  – WebKit: Web Browser kernel
  – Media Framework: PacketVideo OpenCORE
    platform
  – SQLite: Light weight, SQL syntax database




                                                16
Android OS - Architecture
• Android Runtime
  – Core Libraries: Core APIs for Java
     • Data structures, Utilities, File/Network access, graphics
  – Dalvik Virtual Machine




                                                                   17
Android OS - Architecture
• Application Framework
  – Core platform services
     • Activity/Package/Window/Resource Manager
  – Hardware Services
     • Access to lower-level API through location Manager
     • Telephony/Bluetooth/WiFi/USB/Sensor Service




                                                            18
Android OS - Architecture
• Application Framework




                                 19
Android OS - Architecture
• Applications
  – Built-in Core Applications
     • Email client, SMS, Calendar, Maps, Contacts, Browser…
  – User implemented Applications
     • Written in Java
     • Every application has its own process
     • Can be killed to reclaim resources




                                                               20
Android OS - Architecture




                            21
Android OS - Application development
• Tools needed: Android SDK, Java JDK, Eclipse,
  Android Development Tools plugin
• Application components:
  – Activities: Interactive Tasks
  – Services: Non-interactive Tasks
  – Content providers: Database Server
  – Broadcast receivers: Capture event responses
  – Intents: Component activation mechanism
• Device Emulator inside Android SDK (qEmu)

                                                   22
Android OS - File system
• Supports Linux filesystems:
  – ext2, ext3, ext4
• YAFFS (Yet Another Flash File System)
  – NAND chips with 512 byte pages




                                          25
Android OS - File system
‒
‒         ‒
‒         ‒
‒         ‒
          ‒
‒                           DALVIK VIRTUAL
          ‒
‒                              MACHINE
    ‒     ‒
    ‒     ‒
    ‒     ‒
          ‒         ‒
‒
          ‒         ‒
‒
          ‒         ‒
‒
          ‒         ‒
‒
          ‒         ‒
‒
                    ‒
‒
                    ‒
‒
                    ‒
‒
                    ‒
                                             26
Android OS - Boot process
                      ROM  Boot code
                      Boot media available
                      Boot loader  RAM




                                          27
Android OS - Boot process
                      Initial memories
                      Kernel  RAM
                      File system
           uBoot      Additional memory
                      Network support
                      Modem
                      CPU
                      Low level memory
                       protections
                      Kernel address
                       space
                      jump




                                           28
Android OS - Boot process
                        Interrupt controllers
                        Memory protections
                        Caches and scheduling
                        Virtual memory
                        User space processes
                        init




                                           29
Android OS - Boot process
                     init.rc  service
                      processes




                                          30
Android OS - Boot process
                            Zygote  VM
                            Socket for input
                            Zygote.fork()  VM for
                             child process




/system/bin/app_process




                                                      31
Android OS - Boot process
                                          System server 
                                           Android services
                                          Telephony
                                          Bluetooth
                                          WiFi
                                          …
                                          User installed apps




    Broadcast signal: ACTION_BOOT_COMPLETED
                                                                 32
Android OS - Boot process




                            33
Android Hardware
• Device Requirements
      Feature                   Minimum Requirement
  Chipset         ARM-based
  Memory          128 MB RAM; 256 MB Flash External
  Storage         Mini or Micro SD
  Primary Display QVGA TFT LCD or larger, 16-bit color or better
  Navigation Keys 5-way navigation with 5 application keys, power,
                  camera and volume controls
  Camera          2MP CMOS
  USB             Standard mini-B USB interface
  Bluetooth       1.2 or 2.0



                                                                     34
Android Hardware – System on Chip
                     Phone Manufacturers / System on Chip Provider
Motorola             Texas Instruments OMAP / NVIDIA Tegra 2 (newer dual core phones)
Samsung              Samsung Hummingbird / Exynos
HTC                  Qualcomm Snapdragon
LG                   Qualcomm Snapdragon / Texas Instruments OMAP 4 (newer dual core phones)
Dell                 Qualcomm Snapdragon
Sony Ericcsson       Qualcomm Snapdragon




                                   HTC Nexus One
                 Chipset                       CPU                      GPU
       Snapdragon Gen1             1 GHz ARM Cortex-A8             Adreno 200


                 *Android Hardware Comparison Chart

                                                                                               35
Android Hardware - Chipsets
                   ARM CPU Specifications
            CPU                             Feaures
                     1.2 DMIPS per MHz (Dhrystone MIPS)
                     Frequency of 528-600 MHz
ARM11
                     8-stage pipeline
                      90nm process technology
                     2 DMIPS per MHz (Dhrystone MIPS)
                     Frequency from 600 MHz to 1 GHz
ARM Cortex-A8        In-order execution pipeline
                     13-stage pipeline
                     65/45nm process technology
                     2.5 DMIPS per MHz (Dhrystone MIPS)
                     Frequency up to 2 GHz
                     Out-of-order execution pipeline
                     NEON SIMD instruction set extension (OMAP 4)
ARM Cortex-A9
                     High performance VFPv3 Floating Point Unit (Tegra 2)
                     9-stage pipeline
                     Support for up to 4 cores                                   AMD Adreno
                     40nm process technology
                                                      GPU                                  Feaures
                                                 Adreno 200       17M triangles/sec
                                                                  41M triangles/sec
                                                 Adreno 205       245M pixels/sec
                                                                  720p video recording and playback up to 30 frames/second
                                                                  88M triangles/sec
                                                 Adreno 220        532M pixels/sec
                                                                   1080p video recording and playback up to 30 frames/second
                                                                                                                               36
Android Hardware – Nexus One




                               37
Android Hardware – Nexus One




                               38
Android Hardware – Nexus One




                               39
Android Hardware – Nexus One




                               40
Focus on
• Testing applications on:
  – SDK Emulator
  – Real device
  – Virtual Machine running Android
• Share experience
• Compare metrics:
  – CPU usage
  – Memory
• Using low level commands (adb)
                                      41
References
•   Software
    – http://en.wikipedia.org/wiki/Android_(operating_system)
    – http://www.mobisoftinfotech.com/blog/tag/layers-of-android/
    – http://www.androidenea.com/2009/06/android-boot-process-from-power-
      on.html
    – http://www.android-app-market.com/android-application-components.html
    – http://www.android-app-market.com/android-development-environment-
      setup.html
    – https://sites.google.com/site/io/anatomy--physiology-of-an-android

•   Hardware
    – http://www.isuppli.com/Teardowns/News/Pages/Google-Nexus-One-Carries-
      $17415-Materials-Cost-iSuppli-Teardown-Reveals.aspx
    – http://androidnexus.com/guides/the-ultimate-android-cpu-gpu-comparison-
      guide




                                                                                42
Try this on your Android Phone!
          *#*#4636#*#*




                                  43
Mobile Operating Systems:
        Android
         Nicos Demetriou

    SONAR – Fall Semester 2012

Más contenido relacionado

La actualidad más candente

Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systemsSriram PV
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating SystemsDasun Hegoda
 
Mobile operating system (os)
Mobile operating system (os)Mobile operating system (os)
Mobile operating system (os)AMIT GUPTA
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android pptTaha Malampatti
 
Presentation On Android
Presentation On AndroidPresentation On Android
Presentation On AndroidTeachMission
 
Mobile operating system by Shabeeb
Mobile operating system by ShabeebMobile operating system by Shabeeb
Mobile operating system by ShabeebShabeeb Shabi
 
Mobile Operating Systems
Mobile Operating Systems Mobile Operating Systems
Mobile Operating Systems Anant Lodha
 
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-pptSrijib Roy
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating SystemsBhargav Radia
 
Seminar on mobile application development with android
Seminar on mobile application development with androidSeminar on mobile application development with android
Seminar on mobile application development with androidNoor Mohammed Anik
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android StudioSuyash Srijan
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating SystemNeha Sharma
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Android Architecture
Android ArchitectureAndroid Architecture
Android Architecturedeepakshare
 

La actualidad más candente (20)

Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android ppt
Android ppt Android ppt
Android ppt
 
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
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android ppt
 
Presentation On Android
Presentation On AndroidPresentation On Android
Presentation On Android
 
Mobile operating system by Shabeeb
Mobile operating system by ShabeebMobile operating system by Shabeeb
Mobile operating system by Shabeeb
 
Android seminar ppt
Android seminar pptAndroid seminar ppt
Android seminar ppt
 
Mobile Operating Systems
Mobile Operating Systems Mobile Operating Systems
Mobile Operating Systems
 
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
 
Android Platform Architecture
Android Platform ArchitectureAndroid Platform Architecture
Android Platform Architecture
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
 
Seminar on mobile application development with android
Seminar on mobile application development with androidSeminar on mobile application development with android
Seminar on mobile application development with android
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android Studio
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android Architecture
Android ArchitectureAndroid Architecture
Android Architecture
 

Destacado

MOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMMOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMcool192
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating systemSalma Begum
 
Seminar on mobile os
Seminar on mobile osSeminar on mobile os
Seminar on mobile osabani12
 
Android OS Presentation
Android OS PresentationAndroid OS Presentation
Android OS Presentationhession25819
 
Android seminar-presentation
Android seminar-presentationAndroid seminar-presentation
Android seminar-presentationconnectshilpa
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)Vaibhav Bajaj
 
What is Android OS in ppt ?
What is Android OS in ppt ? What is Android OS in ppt ?
What is Android OS in ppt ? SoonTips.com
 
My presentation on Android in my college
My presentation on Android in my collegeMy presentation on Android in my college
My presentation on Android in my collegeSneha Lata
 
Features of windows operating system
Features of windows operating systemFeatures of windows operating system
Features of windows operating systemMohammad Alig
 

Destacado (15)

MOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEMMOBILE OPERATING SYSTEM
MOBILE OPERATING SYSTEM
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating system
 
Seminar on mobile os
Seminar on mobile osSeminar on mobile os
Seminar on mobile os
 
Android OS Presentation
Android OS PresentationAndroid OS Presentation
Android OS Presentation
 
Android seminar-presentation
Android seminar-presentationAndroid seminar-presentation
Android seminar-presentation
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)
 
Presentation on operating system
 Presentation on operating system Presentation on operating system
Presentation on operating system
 
operating system structure
operating system structureoperating system structure
operating system structure
 
What is Android OS in ppt ?
What is Android OS in ppt ? What is Android OS in ppt ?
What is Android OS in ppt ?
 
RTOS - Real Time Operating Systems
RTOS - Real Time Operating SystemsRTOS - Real Time Operating Systems
RTOS - Real Time Operating Systems
 
Android ppt
Android pptAndroid ppt
Android ppt
 
My presentation on Android in my college
My presentation on Android in my collegeMy presentation on Android in my college
My presentation on Android in my college
 
Features of windows operating system
Features of windows operating systemFeatures of windows operating system
Features of windows operating system
 
Types of operating system
Types of operating systemTypes of operating system
Types of operating system
 
Android ppt
Android pptAndroid ppt
Android ppt
 

Similar a Mobile operating systems

Android Internals and Toolchain
Android Internals and ToolchainAndroid Internals and Toolchain
Android Internals and ToolchainVladimir Kotov
 
Mobile operating systems - Application Benchmarking
Mobile operating systems - Application BenchmarkingMobile operating systems - Application Benchmarking
Mobile operating systems - Application BenchmarkingNicolas Demetriou
 
Android beyond the smartphone
Android beyond the smartphoneAndroid beyond the smartphone
Android beyond the smartphoneChris Simmonds
 
Q4.11: Porting Android to new Platforms
Q4.11: Porting Android to new PlatformsQ4.11: Porting Android to new Platforms
Q4.11: Porting Android to new PlatformsLinaro
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versionsindiangarg
 
Droidcon uk2012 androvm
Droidcon uk2012 androvmDroidcon uk2012 androvm
Droidcon uk2012 androvmdfages
 
A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)Siji Sunny
 
Android application development
Android application developmentAndroid application development
Android application developmentFahad A. Shaikh
 
MDAD 3 - Android - System, Platform and Application Types
MDAD 3 - Android - System, Platform and Application TypesMDAD 3 - Android - System, Platform and Application Types
MDAD 3 - Android - System, Platform and Application TypesAlexandru Radovici
 
Eci Mobile Computing 20120724 Bryantafel
Eci   Mobile Computing 20120724   BryantafelEci   Mobile Computing 20120724   Bryantafel
Eci Mobile Computing 20120724 BryantafelBryan Tafel
 
Android village @nullcon 2012
Android village @nullcon 2012 Android village @nullcon 2012
Android village @nullcon 2012 hakersinfo
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212Yoojoo Jang
 

Similar a Mobile operating systems (20)

Android architechture
Android architechtureAndroid architechture
Android architechture
 
Android Internals and Toolchain
Android Internals and ToolchainAndroid Internals and Toolchain
Android Internals and Toolchain
 
My androidpresentation
My androidpresentationMy androidpresentation
My androidpresentation
 
Mobile operating systems - Application Benchmarking
Mobile operating systems - Application BenchmarkingMobile operating systems - Application Benchmarking
Mobile operating systems - Application Benchmarking
 
Android beyond the smartphone
Android beyond the smartphoneAndroid beyond the smartphone
Android beyond the smartphone
 
Q4.11: Porting Android to new Platforms
Q4.11: Porting Android to new PlatformsQ4.11: Porting Android to new Platforms
Q4.11: Porting Android to new Platforms
 
android
androidandroid
android
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versions
 
Droidcon uk2012 androvm
Droidcon uk2012 androvmDroidcon uk2012 androvm
Droidcon uk2012 androvm
 
Android
AndroidAndroid
Android
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Android Internals
Android InternalsAndroid Internals
Android Internals
 
A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)
 
Android presentation
Android presentationAndroid presentation
Android presentation
 
Android application development
Android application developmentAndroid application development
Android application development
 
MDAD 3 - Android - System, Platform and Application Types
MDAD 3 - Android - System, Platform and Application TypesMDAD 3 - Android - System, Platform and Application Types
MDAD 3 - Android - System, Platform and Application Types
 
It6601 mobile computing unit 5
It6601 mobile computing unit 5It6601 mobile computing unit 5
It6601 mobile computing unit 5
 
Eci Mobile Computing 20120724 Bryantafel
Eci   Mobile Computing 20120724   BryantafelEci   Mobile Computing 20120724   Bryantafel
Eci Mobile Computing 20120724 Bryantafel
 
Android village @nullcon 2012
Android village @nullcon 2012 Android village @nullcon 2012
Android village @nullcon 2012
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212
 

Último

BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxSayali Powar
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...Nguyen Thanh Tu Collection
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Association for Project Management
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptxmary850239
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfVanessa Camilleri
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxlancelewisportillo
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseCeline George
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataBabyAnnMotar
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSMae Pangan
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxkarenfajardo43
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptxmary850239
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptxDhatriParmar
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxVanesaIglesias10
 

Último (20)

BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
31 ĐỀ THI THỬ VÀO LỚP 10 - TIẾNG ANH - FORM MỚI 2025 - 40 CÂU HỎI - BÙI VĂN V...
 
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
Team Lead Succeed – Helping you and your team achieve high-performance teamwo...
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx
 
ICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdfICS2208 Lecture6 Notes for SL spaces.pdf
ICS2208 Lecture6 Notes for SL spaces.pdf
 
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptxQ4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
Q4-PPT-Music9_Lesson-1-Romantic-Opera.pptx
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
How to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 DatabaseHow to Make a Duplicate of Your Odoo 17 Database
How to Make a Duplicate of Your Odoo 17 Database
 
Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"Mattingly "AI & Prompt Design: Large Language Models"
Mattingly "AI & Prompt Design: Large Language Models"
 
Measures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped dataMeasures of Position DECILES for ungrouped data
Measures of Position DECILES for ungrouped data
 
Textual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHSTextual Evidence in Reading and Writing of SHS
Textual Evidence in Reading and Writing of SHS
 
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptxGrade Three -ELLNA-REVIEWER-ENGLISH.pptx
Grade Three -ELLNA-REVIEWER-ENGLISH.pptx
 
4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx4.16.24 Poverty and Precarity--Desmond.pptx
4.16.24 Poverty and Precarity--Desmond.pptx
 
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
Unraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptxUnraveling Hypertext_ Analyzing  Postmodern Elements in  Literature.pptx
Unraveling Hypertext_ Analyzing Postmodern Elements in Literature.pptx
 
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of EngineeringFaculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptx
 

Mobile operating systems

  • 1. Mobile Operating Systems: Android Nicos Demetriou SONAR – Fall Semester 2012
  • 2. Outline • Historical Development • Mobile OS in market • Android OS – Introduction – Architecture – Application Development – Filesystem – Boot process • Hardware • Focus on 2
  • 3. Historical Development • 1973 – First mobile phone device by Motorola • 1978 – Advanced Mobile Phone System (1G) • 1990 – GMS standard (2G) • 1993 – First smartphone by IBM with touch screen • 1996 – Windows CE Handheld device • 1998 – Psion Company develops Symbian • 1999 – First Nokia phone with Symbian S40 (7110) • 2002 – First smartphone by BlackBerry • 2002 – 3G telecommunication technology • 2007 – Apple iPhone with iOS introduced • 2008 – Android 1.0 with the HTC Dream • 2010 – Microsoft launches Windows Phone OS • 2011 – MeeGo first Linux mobile by Nokia, Intel and Linux Foundation 3
  • 4. Mobile OS in the market – Manufacturer-built proprietary OS • Apple iOS, BlackBerry RIM, HP webOS – Third party proprietary OS • Microsoft Windows Phone 7 – Open source OS • Android • MeeGo • Symbian 4
  • 5. Android OS - Introduction • Linux-based (v2.6 Kernel), open source, free • Operating system, middleware and key mobile applications • Originally founded by Android Inc. in 2003 • Purchased and developed by Google since 2005 • Open Handset Alliance • Apache v2 license 5
  • 7. Android OS • Other uses of Android OS Ouya Android@Home Cameras Project Glass Wristwatches 7
  • 8. 8
  • 9. Android OS - Architecture 9
  • 10. Android OS - Architecture • Linux Kernel (2.6.24) – Android is not Linux – Only kernel portion of Linux – Enchancements to support Android – GNU utility packages ported to ARM – Abstraction layer between Hardware and Software – No native windowing system (X11) 10
  • 11. Android OS - Architecture • Binder Driver – InterProcess Communication between applications – Map process memory address to kernel address – ioctl() – Synchronous calls between processes – AIDL (Android Interface Definition Language) 11
  • 12. Android OS - Architecture • Binder in action 12
  • 13. Android OS - Architecture • Power Management – Battery power Limited capacity – Built on top of Linux PM – Wake locks – keep power on • PARTIAL_WAKE_LOCK (CPU on, screen/keyboard off) • SCREEN_DIM_WAKE_LOCK (CPU on, screen dim, keyboard off) • SCREEN_BRIGHT_WAKE_LOCK (CPU on, screen bright, kb off) • FULL_WAKE_LOCK (CPU on, screen on, keyboard bright) 13
  • 14. Android OS - Architecture • Power Management in action 14
  • 15. Android OS - Architecture • Other kernel features – Android shared memory (ashmem) – Process memory allocator (pmem) – System logging facility (logger) – Alarm timers – Paranoid network security – RAM_CONSOLE (save kernel messages to RAM) 15
  • 16. Android OS - Architecture • Native Libraries (C/C++ libraries) – Custom libc: Bionic – WebKit: Web Browser kernel – Media Framework: PacketVideo OpenCORE platform – SQLite: Light weight, SQL syntax database 16
  • 17. Android OS - Architecture • Android Runtime – Core Libraries: Core APIs for Java • Data structures, Utilities, File/Network access, graphics – Dalvik Virtual Machine 17
  • 18. Android OS - Architecture • Application Framework – Core platform services • Activity/Package/Window/Resource Manager – Hardware Services • Access to lower-level API through location Manager • Telephony/Bluetooth/WiFi/USB/Sensor Service 18
  • 19. Android OS - Architecture • Application Framework 19
  • 20. Android OS - Architecture • Applications – Built-in Core Applications • Email client, SMS, Calendar, Maps, Contacts, Browser… – User implemented Applications • Written in Java • Every application has its own process • Can be killed to reclaim resources 20
  • 21. Android OS - Architecture 21
  • 22. Android OS - Application development • Tools needed: Android SDK, Java JDK, Eclipse, Android Development Tools plugin • Application components: – Activities: Interactive Tasks – Services: Non-interactive Tasks – Content providers: Database Server – Broadcast receivers: Capture event responses – Intents: Component activation mechanism • Device Emulator inside Android SDK (qEmu) 22
  • 23. Android OS - File system • Supports Linux filesystems: – ext2, ext3, ext4 • YAFFS (Yet Another Flash File System) – NAND chips with 512 byte pages 25
  • 24. Android OS - File system ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ DALVIK VIRTUAL ‒ ‒ MACHINE ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ ‒ 26
  • 25. Android OS - Boot process  ROM  Boot code  Boot media available  Boot loader  RAM 27
  • 26. Android OS - Boot process  Initial memories  Kernel  RAM  File system uBoot  Additional memory  Network support  Modem  CPU  Low level memory protections  Kernel address space  jump 28
  • 27. Android OS - Boot process  Interrupt controllers  Memory protections  Caches and scheduling  Virtual memory  User space processes  init 29
  • 28. Android OS - Boot process  init.rc  service processes 30
  • 29. Android OS - Boot process  Zygote  VM  Socket for input  Zygote.fork()  VM for child process /system/bin/app_process 31
  • 30. Android OS - Boot process  System server  Android services  Telephony  Bluetooth  WiFi  …  User installed apps Broadcast signal: ACTION_BOOT_COMPLETED 32
  • 31. Android OS - Boot process 33
  • 32. Android Hardware • Device Requirements Feature Minimum Requirement Chipset ARM-based Memory 128 MB RAM; 256 MB Flash External Storage Mini or Micro SD Primary Display QVGA TFT LCD or larger, 16-bit color or better Navigation Keys 5-way navigation with 5 application keys, power, camera and volume controls Camera 2MP CMOS USB Standard mini-B USB interface Bluetooth 1.2 or 2.0 34
  • 33. Android Hardware – System on Chip Phone Manufacturers / System on Chip Provider Motorola Texas Instruments OMAP / NVIDIA Tegra 2 (newer dual core phones) Samsung Samsung Hummingbird / Exynos HTC Qualcomm Snapdragon LG Qualcomm Snapdragon / Texas Instruments OMAP 4 (newer dual core phones) Dell Qualcomm Snapdragon Sony Ericcsson Qualcomm Snapdragon HTC Nexus One Chipset CPU GPU Snapdragon Gen1 1 GHz ARM Cortex-A8 Adreno 200 *Android Hardware Comparison Chart 35
  • 34. Android Hardware - Chipsets ARM CPU Specifications CPU Feaures 1.2 DMIPS per MHz (Dhrystone MIPS) Frequency of 528-600 MHz ARM11 8-stage pipeline 90nm process technology 2 DMIPS per MHz (Dhrystone MIPS) Frequency from 600 MHz to 1 GHz ARM Cortex-A8 In-order execution pipeline 13-stage pipeline 65/45nm process technology 2.5 DMIPS per MHz (Dhrystone MIPS) Frequency up to 2 GHz Out-of-order execution pipeline NEON SIMD instruction set extension (OMAP 4) ARM Cortex-A9 High performance VFPv3 Floating Point Unit (Tegra 2) 9-stage pipeline Support for up to 4 cores AMD Adreno 40nm process technology GPU Feaures Adreno 200 17M triangles/sec 41M triangles/sec Adreno 205 245M pixels/sec 720p video recording and playback up to 30 frames/second 88M triangles/sec Adreno 220 532M pixels/sec 1080p video recording and playback up to 30 frames/second 36
  • 35. Android Hardware – Nexus One 37
  • 36. Android Hardware – Nexus One 38
  • 37. Android Hardware – Nexus One 39
  • 38. Android Hardware – Nexus One 40
  • 39. Focus on • Testing applications on: – SDK Emulator – Real device – Virtual Machine running Android • Share experience • Compare metrics: – CPU usage – Memory • Using low level commands (adb) 41
  • 40. References • Software – http://en.wikipedia.org/wiki/Android_(operating_system) – http://www.mobisoftinfotech.com/blog/tag/layers-of-android/ – http://www.androidenea.com/2009/06/android-boot-process-from-power- on.html – http://www.android-app-market.com/android-application-components.html – http://www.android-app-market.com/android-development-environment- setup.html – https://sites.google.com/site/io/anatomy--physiology-of-an-android • Hardware – http://www.isuppli.com/Teardowns/News/Pages/Google-Nexus-One-Carries- $17415-Materials-Cost-iSuppli-Teardown-Reveals.aspx – http://androidnexus.com/guides/the-ultimate-android-cpu-gpu-comparison- guide 42
  • 41. Try this on your Android Phone! *#*#4636#*#* 43
  • 42. Mobile Operating Systems: Android Nicos Demetriou SONAR – Fall Semester 2012