
- It is a layered system framework that helps the android OS manage hardware, apps and system processes.
- It was built in Linux.
- Android was developed by Android INC in 2003, founded by Andy Rubins, Rich Miner, Nick Sears and Christ White.
- Google accquired Andriod in 2005 and released the first version, Android 1.0 on Sep 23,2008.
Components of Android Architecture
Linux Kernel - The foundation
- Foundation of the android platform.
- Directly manages the hardware, including the CPU memory, camera, sensor, WiFi and other component.
- Handles process management deciding which apps and system service run and for how long and memory management, allocating and freeing RAM as needed.
- Provides security through SELinux enforcing restrictions to prevent apps from accessing resources they shouldn’t as it manages networking, including WiFi mobile data and VPN connections.
Hardware Abstraction Layer(HAL)
- Provides standard interfaces that allow Android framework to interact with device hardware.
- HAL modules are dedicated to a specific hardware component like camera, Bluetooth or GPS.
- When an API uses a hardware API, HAL translates it to the correct commands for the device’s hardware driver.
- HAL makes app work across different devices without worrying about hardware.
Android Runtime(ART)
- Android Runtime(ART) is the environment in which Android apps execute.
- Apps are complied into Dalvik Executable (DEX) bytecode, which ART runs efficiently optimizing for low memory usage.
- ART uses Ahead-of-Time(AOT) compilation during installation and Just-in-Time(JIT) compilation at runtime to improve performance.