1th. Android system porting and driving development Overview
1.1 Android System Architecture
Android is a very good embedded operating system. After several years of development and evolution, Android has evolved to form a very well-developed forest system architecture.
Android's system architecture is divided into 4 tiers: The Linux kernel, the C + + code base, the Android SDK API, the application.
1.2 The main work of Android system porting
Android system porting can be divided into two parts: application porting and system porting. The main work of Android porting is as follows: Porting Linux driver, porting HAL.
1.3 Viewing the Linux kernel version
Currently the main maintenance of the Linux kernel 3 versions are: linux2.4,linux2.6 and linux3.x. Method One is: Perform the following command uname-a on the Linux terminal. Method Two is: Perform the following command cat/proc/version on the terminal.
1.4 Definition rules for Linux kernel version numbers
The Linux kernel version number consists of the following steps: Major version number, minor version number, revision number, fine-tuning version number, and special tuning description for specific Linux systems.
1.5 How to learn Linux driver development
There are a few things to learn about Linux: preparing a familiar Linux operating system for developing and testing Linux drivers, using Ubuntu Linux10.04 and above, preparing a Development Board (recommended for ARM11-based boards), learning Gnuc , learning the relevant hardware knowledge, and constantly practice.
1.6 Linux Device drivers
This section mainly describes the role of device drivers throughout the operating system and the classification of device drivers. Linux divides the additional storage into 3 categories: Character devices, block devices, and network devices.
1.7 See what's called Linux drivers: LEDs
This section mainly describes what Linux drivers are.
1.8 Summary
Learn Linux driver programming It is important to understand that Linux drivers are only relevant to the Linux kernel and are not related to the Linux system used by the user.
Android Deep Exploration (Vol. 1) HAL and Driver Development---the first chapter