【正文】
on 06/13/11 6 Intro to Android – Relevant Devices ? Phones ? Tablets ? Vehicle Navigation ? Ebook ? … Copyright 2022 Trend Micro Inc. Classification 06/13/11 7 Android Architecture – Architecture Overview Copyright 2022 Trend Micro Inc. Classification 06/13/11 8 Android Architecture – Kernel ? Derived from Linux kernel, with added enhancements not found in Linux – Alarm driver (provides timers to wakeup devices) – Ashmem (shared memory driver) – Pmem (physically contiguous memory) – Binder (interprocess munication) – Logger (android kernel debugger and application debug) – Android PM (ACPI vs Labled PM, which takes a more aggressive approach than the Linux PM solution) – Low memory Killer Copyright 2022 Trend Micro Inc. Classification 06/13/11 9 Android Architecture – Software Architecture ? Native Libraries – Bionic, a super fast and small licensefriendly libc library optimized for embedded use (not support full of GNU libraries, not 100% support POSIX) – Surface manager, for posing window manager with offscreen buffering – 2D and 3D graphics, hardware support or software simulation (SGL, OpenGL, FreeType) – Media framework, media codecs offer support for major audio/video codecs (Opencore) – SQLite, database – WebKit library for fast HTML rendering (google oem) Copyright 2022 Trend Micro Inc. Classification 06/13/11 10 Android Architecture – Software Architecture ? Hardware Abstraction Libraries – GPS, Radio, Camera, Bluetooth, other I/O – Hardware drivers must implement in order for applicationss to use them – Applications interact with the abstraction libraries, not the driver – Promotes variety in hardware without breaking applications – Gives OS tighter control over devices Copyright 2022 Trend Micro Inc. Classification 06/13/11 11 Android Architecture – Software Architecture ? Android Runtime – Dalvik VM – Google’s implementation of Java Optimized for mobile devices, based apache harmony – Registerbased versus stackbased VM – Dex files – Unpressed .dex = * Unpressed .jar – More efficient and pact implementation – Different set of Ja