View
1
Download
0
Category
Preview:
Citation preview
Slide title
In CAPITALS
50 pt
Slide subtitle
32 pt
Muhammad Rizwan Asghar
March 12, 2020
OVERVIEW OF ANDROID
Lecture 6
COMPSCI 702
Security for Smart-Devices
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
2
WHAT IS ANDROID?
Android is an Operating System (OS) for smartphones
Initially developed by Android Inc.
– Which Google acquired in 2005
Later developed by Google
Open-source
Based on the Linux kernel
SDK was released in November 2007
– For Java
NDK was released in June 2009
– For C and C++
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
3
KEY PLAYERS IN THE MOBILE OS MARKET
Source: Global Stats February 2019
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
4
ANDROID HISTORY
The Open Handset Alliance (OHA) is for
developing open standards for mobile devices
OHA is a consortium of 84 firms– Google, HTC, Sony, Dell, Motorola, Qualcomm, Samsung,
LG, T-Mobile, Nvidia, and many others
– Link: http://www.openhandsetalliance.com/oha_faq.html
Announced on November 5, 2007
The first Android device was sold in 2008
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
5
ANDROID DEVICES
Phone
WearTablet
AutoTV
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
6
ANDROID VERSIONS
Source: youtube.com
Pie
2018
2019
Pie
2018
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
7
CURRENT ANDROID DISTRIBUTION
Source: android.com
(Data collected on May 7, 2019)
Any versions with less than 0.1%
distribution are not shown
Version Codename API Distribution
2.3.3 -
2.3.7Gingerbread 10 0.3%
4.0.3 -
4.0.4
Ice Cream
Sandwich15 0.3%
4.1.x
Jelly Bean
16 1.2%
4.2.x 17 1.5%
4.3 18 0.5%
4.4 KitKat 19 6.9%
5.0Lollipop
21 3.0%
5.1 22 11.5%
6.0 Marshmallow 23 16.9%
7.0Nougat
24 11.4%
7.1 25 7.8%
8.0Oreo
26 12.9%
8.1 27 15.4%
9 Pie 28 10.4%
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
8
ANDROID APPS
The Android development kits are available for
FREE– SDK
– NDK
One can develop and distribute apps
App markets– As of March 10, 2020, the Google Play store has reached
over 2.875 million apps
– 84.3 billion downloads in 2019 (release January 2020)
– Support for regional and third party markets
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
9
ANDROID IS FOR FREE
Vendors can download Android for FREE from Google
Download link: http://source.android.com
Vendors range from large enterprises (e.g., Samsung)
to small ones (e.g., small Chinese/Russian firms)
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
10
ANDROID FRAGMENTATION
Vendors customise the OS for their devices
– Typically, vendors include their apps
– Some of apps could compromise security/privacy
– E.g., the Samsung app compromises on privileges
– Link: http://randomthoughts.greyhats.it/2013/03/owning-samsung-
phones-for-fun-but-with.html
However, a vendor does not push updates frequently
– Some devices could be some versions behind
– Some vendors stop supporting their devices afterwards
– Link: http://theunderstatement.com/post/11982112928/android-
orphans-visualizing-a-sad-history-of-support
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
11
The lack of support can lead to vulnerabilities
Often vendors just ignore vulnerabilities in their
software
Apple does a much better job– One single piece of hardware
– One single software image
ANDROID FRAGMENTATION
PROBLEM
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
12
Android is actually a middleware
It sits between a Linux kernel and a set of APIs
Android apps are mainly written in Java– Only Android apps can run on Android
Through Android APIs, apps can access all the
device components– It provides apps a rich set of information
WHAT IS UNDER THE HOOD?
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
13
ANDROID ANATOMY
Linux Kerne lDisplay Driver Camera Driver Bluetooth Driver
Shared Memory Driver Binder (IPC) Driver
Power ManagementUSB Driver Keypad Driver WiFi Driver
Audio Drivers
Appl icat ionsHome Dialer
Contacts
SMS/MMS
Email Calendar Media Player Albums
Appl icat ion Framework
IM Browser Camera
Clock
Calculator
…Voice Dial
Alarm
Android RuntimeCore Libraries
Dalvik Virtual Machine
View SystemContent Providers
Resource Manager …
Activity Manager
Package Manager
Libc
Window Manager
Telephony Manager
LibrariesMedia
Framework
Notification Manager
Location Manager
FreeType
SGL SSL
SQLite
WebKit
Surface Manager
OpenGL|ES
Source: Android Anatomy and Physiology, Patrick Brady
Andr o id RuntimeCore Libraries
DalvikVirtual Machine
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
14
LINUX KERNEL
Android is built on the Linux kernel– But it is not Linux
No glibc support
Does not include the full set of standard Linux
utilities
Kernel enhancements
Linux Kerne lDisplay Driver Camera Driver Bluetooth Driver
Shared Memory Driver Binder (IPC) Driver
Power ManagementUSB Driver Keypad Driver WiFi Driver
Audio Drivers
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
15
WHY LINUX KERNEL?
Great memory and process management
Permissions-based security model
Proven driver model
Support for shared libraries
It is already open-source!
Linux Kerne lDisplay Driver Camera Driver Bluetooth Driver
Shared Memory Driver Binder (IPC) Driver
Power ManagementUSB Driver Keypad Driver WiFi Driver
Audio Drivers
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
16
TO BE CONTINUED
See the next lecture
Top right
corner for
field
customer or
partner logotypes.
See Best practice
for example.
Slide title
pt
Slide subtitle
pt
Text
pt
5
pt
17
Questions?
Thanks for your attention!
Recommended