Chapter One overview of Android system porting and driver development
Android 's system architecture is divided into four tiers: theLinux kernel (android uses Linux2.6 as the kernel), C + + code base,Android SDK API(JAVA -written Library ), applications.
Androidtransplantation is divided into system transplant and application transplant,Androidsystem Transplant,Androidin a differentCPUThere is no need to make too many changes between the schemas (sometimes some adjustments are needed) in order to allowAndroidsupports different hardware platforms and requiresLinuxDrive porting. AndroidA hardware abstraction layer is also added to the system.HAL(Hardware Abstraction Layer),AndroidthroughHALAccessLinuxDrive. If you add a new driver or make a change to the original driver, you need toHALmake changes. In theLinuxwhen driving a transplant, the main considerationsLinuxkernel version,Linuxthe same driver as the kernel version can be replaced (drive andHALcompatible with the case).
view of the Linux kernel version
1. Mobile phone Android --- device --- about mobile phone
2.Linux Kernel version query
Method One:uname-a
Method Two:cat/proc/version
The Linux kernel version number consists of the major version number, the minor version number, the revision number, the fine tuning version number, and the special tuning description for the specific Linux system.
Linux divides memory and peripherals into three main categories, character devices, block devices, and network devices. The communication between the Linux kernel and the network device is completely different from that of the character device and the block device, and the network device is designed for packet reception and transmission. You can classify character devices and block devices as a unit that can be read and stored sequentially/randomly, and the network device is the driver of a special device that is responsible for receiving and transmitting frame data, possibly physical frames, or IP Packets , all of which have network-driven decisions.
Android Deep Explore (Vol. 1) Hal with Driver Development Learning notes (1)