Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Android OS Overview
1. Android OS
A brief introduction to the OS, its working and development
Presented by Sanskar Agrawal
Roll 37, CS31
2. Contents
● Introduction and History
● Fundamentals & Features
● How Android works: Architecture
● Current State: Market Share
● What’s in it for the Developers?
● Conclusion & Future
3. Introduction and History
● Mobile operating system based on modified Linux Kernel
● Developed by OHA (Google, Dell, Intel, Samsung, Qualcomm and others)
● Commercially funded and operated by Google. Over 70% of Android
powered devices run Google’s ecosystem.
● FOSS based on Android Open Source Project. Most distributions ship with
GMS inbuilt. Other forks include FireOS (Amazon) and LineageOS.
● Other than mobile, supports a wide variety of devices. Examples include
Android Auto, Android TV, nVidia Shield and WearOS.
● Basic OS supplemented by a wide variety of installable apps, available to
download from app stores like Google Play or Aptoide. Apps can also be
sideloaded directly from APKs.
● World’s most widely used OS with over 2 billion installs and 3 million apps.
contd...
4. Introduction and History Continued
● Originally conceived as an smart OS for cameras. By late 2004, it was
realized that this market wasn’t big enough, and Android pivoted to the
next big thing: Smartphones.
● Google acquired Android for $50 Million in 2005. Original design was for
no touchscreen and a QWERTY keyboard similar to Blackberry, but this
was changed after iPhone’s intro in 2007.
● OHA founded in November 2007 to combat Apple’s market lead by
developing Android based devices. First commercially available
smartphone running Android, HTC Dream was released in October of the
next year.
● There have been 17 iterations of Android since then, with the latest being
Android 12, which is currently in developer preview.
6. Fundamentals and Features Continued
● Android OS is supplemented by a variety of apps that a user can install on
their devices. These apps have compiled bytecode intended for execution
in a JVM, but are rather converted to native files through ART.
● Android essentially operates as a multi-user linux system in which each
app is a different user. Each app runs inside its own isolated Virtual
machine sandbox, with a unique ID and a set of permissions.
● By default, every app on Android is a Linux process, which starts when a
component of the app needs to be executed, and is stopped when the
process is no longer needed, or when the system runs out of memory.
● Each app has a manifest file that declares its attributes, the core
components that define the behavior of the app, and resource files which
are loosely coupled to allow optimizations according to device
preferences.
7. How Android Works: Architecture
● Android Software Stack is
developed by AOSP, independent
of OHA and other manufactures.
● The stack is now known to
incorporate 5 layers, discussed
below:
● Linux Kernel: Root of the stack.
Manages System Security,
Memory, Power, and drivers for
different hardware components.
ART relies on the Linux Kernel for
most of its low level features.
contd...
8. How Android Works: Architecture Continued
● Hardware Abstraction Layer: Provides standard interfaces for specific
hardware, for example Camera or Bluetooth that expose device hardware
capabilities to the Java API Framework.
● Native Libraries and ART: Native Code Modules written in C/C++.
Examples include the OpenGL library, WebKit, Media Frameworks and SSL.
ART is the runtime environment of Android, which uses AOT and JIT
compilation to convert JVM Bytecode to DEX, which runs on the Android
platform.
● Java API Framework: An exhaustive set of APIs based on OpenJDK that
includes a view system, resource, notification and activity managers and
content provides.
● System Apps: Collection of Core apps for email, messaging, browsing,
calling and so on. 3rd party apps can also be defaulted for most purposes.
9. 71.81%
Mobile Operating
System Share
March 2021
Current State: Market Share
96.07%
Mobile Operating
System Share in
India
March 2021
40.17%
Operating System
Share
March 2021
3M+ Apps
Google Play Store
Jan 2021
Sources: StatCounter & Statista
10. What’s in it for the Developers?
● Android is a platform that is used by over 2 Billion users, with that number
projected to grow only upwards in the near future. This gives developers
and companies a massive user base to target. Apropos of that, nearly all
major applications have their presence on Android.
● Google provides a very comprehensive SDK to devs, which can be used to
write code in already familiar languages like Java or modern languages
like Kotlin. The devs also have the capability to mix C/C++ into their apps
using the provided NDK, or can even decide to build the entire app in it.
● Android Studio, the default IDE provided for Android Development, is one
of the most featureful IDEs in the fold, and Google has tremendous training
and guides available for every component that allows developers to utilize
all the features of the platform optimally.
● Android development is supplemented by a variety of tools such as
Firebase and JetPack Compose that allow for rapid dev and deployment.
11. Conclusion and Future
● Advantages: Support for a wide range of devices, extreme flexibility,
intuitive UI, Easy adoption, massive app catalog and huge community
reach.
● Disadvantages: Hardware Quality can be poor due to low price, Need for a
Google account, Security and Privacy issues and Manipulation by
Manufactures.
● Android has shown continuous growth and adoption in the last decade,
and is expected to do so for the foreseeable future. Android has become
the go-to bridge from the physical world to the digital. For many, it is the
only way to experience the internet.
● With continuous integration of ML into the platform and IoT and 5G control
coupled with cross platform development through Flutter and Kotlin
Multiplatform, Android is, in many ways, the defining factor in tech
evolution and the future of computing.