Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Android OS Architecture

Android OS Architecture

Overview of the Android Architecture layers and components:
- Kernel layer
- Hardware abstraction layer
- Native libraries
- Android Runtime layer
- Application framework layer
- Application layer

In addition to it during this talk, we will talk about the difference between JVM, Dalvik and ART; Linux and Android security model and trends of Android.

Alex Zhukovich

March 29, 2018
Tweet

More Decks by Alex Zhukovich

Other Decks in Technology

Transcript

  1. Compilation JVM vs DVM Java Compiler (javac) Java Source Code

    (*.java) Java Bytecode (*.class) Java Virtual Machine Java Source Code (*.java) Java Bytecode (*.class) Dalvik Virtual Machine Dalvik Bytecode (*.dex) DEX Compiler Java Compiler (javac)
  2. Dalvik (Just In Time) vs ART (Ahead of Time) Installing

    Run Running... Compile Installing Run Running... Compile
  3. UID/GID - Android <permission name="android.permission.INTERNET" > <group gid="inet" /> </permission>

    https://android.googlesource.com/platform/frameworks/base/+/master/data/etc/platform.xml
  4. /data/data/package_name/shared_prefs/prefs <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <int name="theme" value="0"

    /> </map> val sharedPreferences = getSharedPreferences( "prefs", Context.MODE_PRIVATE) sharedPreferences .edit() .putInt( "theme", 0) .apply()