1.1 Background correlation and system architecture
1. Each version name and version number
2. Four modules of the platform architecture
Various levels of introduction:
- Application Layer (Java application)
Contains many applications written in the Java language, built-in applications and the programs we develop are on this level.
- Application Framework Layer (Java framework)
This layer encapsulates the core API framework needed to develop an application, or a class library that simplifies the reuse of components, and
We can use the provided components directly for rapid application development, You can also implement an extension of personalization
through inheritance. The layer consists of 10 parts:
- activity Manager (activity Manager): Manage individual application lifecycles and common fallback features
- Window Ma Nager (window manager): Manage all Windows programs
- content Provider (content Provider): Enables access or sharing of data between different applications
- Strong>view System (view System): Building the basic components of an application
- Notification Manager (Notification Manager) : Enables applications to display custom prompts in the status bar
- Package Manager (Pack manager): Program Management in Android system
- Telephony Manager (phone manager): Manage all mobile device features
- Resource Manager (Resource Manager): Provides a variety of non-code resources used by the application, such as layouts, color files,
- location Manager (position Manager): Provide location services
- XMPP service (XMPP services): A generic process in Google talk that provides a background push service
System Library and Android runtime Layer (local framework and Java Runtime Environment)
This layer is the dependency layer of the application framework that serves the various components in the Android system, consisting of two parts:
System library with Android runtime, the system library contains nine subsystems:
- Surface Manager (Layer Management): Responsible for managing the interaction between display and access operations
when executing multiple applications, and also responsible for displaying and synthesizing 2D drawings and 3D drawings
- Strong>media Framework (Multimedia Library): supports a variety of commonly used audio, video format recording and playback, encoding
format includes MPEG4, MP3, H, AAC, ARM
- SQLite (database): Small relational database engine
- opengl|es (drawing function Library): 3D drawing function Library implemented according to OpenGL ES 1.0API standard
- FreeType (font engine): Provides the mapping and display of bitmap and vector words
- WebKit : A set of web browser software engines
- SGL : underlying 2D graphics Rendering engine
- SSL : Implementing a handshake during communication on Andorid
-
Libc (C library): Standard C system function library from BSD inheritance, specifically customized for embedded Linux-based devices
and the Android runtime consists of two parts:
-
Core Libraries (Core library Set): The core library provides most of the functionality in the Java language API, and also
contains some of Android's core APIs, such as Android.os, Android.net, Android.media and so on.
- Dalvik virtual machine :
Register-based Java Virtual machine, Dalvik virtual machine is mainly to complete the life cycle management, stack management,
thread management, Important functions such as security and exception management, and garbage collection.
Linux kernel layer
Android is based on the Linux2.6 kernel, replacing Linux with the GNU protocol-bound parts, allowing Android
Program can be used for commercial purposes, and its core system services such as security, memory management, process management, network protocols
And the driver model are all dependent on the Linux kernel. The Linux kernel is also an abstraction layer for hardware and software stacks.
drivers include: Display driver, camera driver, keyboard driver, WiFi driver, audio driver, flash memory
Driver, Binder (IPC) driver, power management, etc.
3. Some updates
1. The built-in browser (WebView) is webkit based on the Andrdoid 4.4, WebKit provides page parsing, layout
and drawing, as well as JS run basic functions, and in 4.4 has been replaced by Chromium,chromiun in WebKit Foundation
also provides infrastructure for processes, threading, and rendering, and chromium-based browsers can provide us with more powerful
Web browsing capabilities.
2. About virtual machines in Android, from the beginning of 5.0 from Dalvik to art, from the JIT (Just in time, shipped
Ahead of time, pre-run compilation), the AOT is only compiled once during installation, and subsequent operations
The line does not have to be compiled, thus reducing the application startup time, in addition to performance improvement, art for the system memory allocation and
The garbage collection algorithm also has a certain elevation.
1.1 Background correlation and system architecture