Android OS
The current version of Android is
Android 11
The two types of apps
Installed and pre-installed
Linux Kernel Level
Acts as an abstraction layer between the software/hardware present on the device and the drivers needed to facilitate this are present here Manages the core functionality of Android
Replaced Dalvik Virtual Machine
Android Runtime (ART)
Dalvik Virtual Machine
Android applications run Java programs _____________
Permission Model
Any Android Application must be granted permission to access sensitive functionality by the user The ability for users to pick and choose which permissions they wanted to accept or deny was first implemented in Android 6
Ahead-Of-Time (AOT)
Compiles entire application into native machine code upon their installation Automatically increase the install time for an application Eliminates Dalvik's JIT, thereby increases the efficiency Reduces power consumption
Application Sandbox
Each application runs as a unique user. In other words, a UID is assigned to each application and is run as a separate process. This concept ensures an application sandbox at the kernel level
Just-In-Time (JIT)
Frequently executed operations are identified and dynamically compiled to the native machine code
With Android 6, Google has mandated _________ for MOST DEVICES
Full disk encryption
Java APA Framework Layer
Handles basic phone functions
TEE
Is used to perform such operations and the software on the main processor delegates operations that require the use of secret data to the TEE processor
Application Signing
It is mandatory that all apps must be digitally signed
Libraries Layer
Responsible for providing support for the core features
Secure Kernel
Security features that are inherent to the Linux Kernel are automatically adopted by Android With each Android release, the kernel also changes
Hardware Abstraction Layer
This layer exposes the device hardware capabilities to high level Java framework Consists of library modules that implement interfaces for specific types of software
True or False; Android is open source
True
Android Keystore
Used to protect cryptographic keys from unauthorized access
System Apps Layer
User can interact directly with device