0% found this document useful (0 votes)
4 views13 pages

4 Android OS

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views13 pages

4 Android OS

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

Android OS

Luca Verderame
Mobile OS Market Share

https://www.counterpointresearch.com/insights/global-smartphone-os-market-share/#
2
App market share

https://asomobile.net/en/blog/mobile-app-market-report-2022/ 3
Android Operating System
● A software platform and operating system
for mobile devices
● Based on the Linux kernel
● Allows writing managed code in the Java
language (and Kotlin)

4
Linux Kernel
● Android relies on Linux kernel for core system services such as security, memory
management, process management, network stack, and driver model.
● Note that there is an Android-specific driver: the Binder, that provides
Inter-Process Communication (IPC).
● Starting with Android 4.3, Security-Enhanced Linux (SELinux) is used to further
increase the security of the system

5
Hardware Abstraction Layer (HAL)
● The hardware abstraction layer (HAL) provides standard interfaces that
expose device hardware capabilities to the higher-level Java API framework.
● The HAL consists of multiple library modules, each of which implements an
interface for a specific type of hardware component
● When a framework API makes a call to access device hardware, the Android
system loads the library module for that hardware component

6
Android Runtime
● For devices running Android version 5.0 (API level 21) or higher, each app runs in its
own process and with its own instance of the Android Runtime (ART)
● ART is written to run multiple virtual machines on low-memory devices by
executing Dalvik Executable format (DEX) files
● Android also includes a set of core runtime libraries that provide most of the
functionality of the Java programming language, including some Java 8 language
features, that the Java API framework uses.

Classic Java VM ART VM inside Android 7


ART Ahead-Of-Time Compilation

8
Libraries
● Android includes a set of C/C++ libraries used by various components of
the Android system. These capabilities are exposed to developers through
the Android application framework.
● Many core Android system components and services, such as ART and
HAL, are built from native code that requires native libraries written in C
and C++.

9
Java API Framework
● The entire feature-set of the Android OS is available through APIs written in the
Java language.
● These APIs form the building blocks you need to create Android apps by simplifying
the reuse of core, modular system components and services

10
Java API Framework
Underlying all applications is a set of services and systems, including:

• Content Providers: enable applications to access data from other applications (such
as Contacts), or to share their own data
• Resource Manager: provides access to non-code resources such as localized
strings, graphics, and layout files
• Notification Manager: enables all applications to display custom alerts in the status
bar
• Activity Manager: manages the lifecycle of applications and provides a common
navigation backstack
• Package Manager: it manages the installation and uninstallation of applications in
the device, according to the manifest file of the application.

11
System Apps
● The application layer includes all the user and system applications of the Android
OS
● Android provides a set of core applications: Email Client, SMS Program, Calendar,
Maps, Browser, Contacts, ...

12
References
Android architecture: https://developer.android.com/guide/platform?hl=en

13

You might also like