第一章Android系统移植与驱动开发概述
Android的系统架构分为四层:Linux内核(Android使用Linux2.6作为内核)、C/C++代码库、Android SDK API(JAVA编写的Library)、应用程序。
Android移植分为系统移植和应用移植,Android的系统移植中,Android在不同的cpu架构之间不需要做过多的改动(有时仍需要一些调整),为了可以让Android支持不同的硬件平台,还需要进行Linux驱动移植。Android系统中还增加了一个硬件抽象层HAL(Hardware Abstraction Layer),Android通过HAL访问Linux驱动。如果增加了新的驱动或对原先的驱动进行了更改,则需要对HAL进行更改。在进行Linux驱动移植的时候,主要考虑Linux内核版本,Linux内核版本相同驱动就可以相互替换(驱动与HAL兼容的情况下)。
Linux内核版本的查看
1.手机Android版---设备---关于手机
2.Linux内核版本查询
方法一:uname -a
方法二:cat /proc/version
linux内核版本号由主版本号,次版本号,修订版本号,微调版本号,为特定的Linux 系统特别调校的描述。
Linux将存储器和外设分为三大类,字符设备、块设备、网络设备。Linux内核与网络设备的通信与字符设备和块设备的通信方式完全不同,网络设备面向数据包的接收和发送而设计。可以将字符设备和块设备归为一类,它们都是可以顺序/随机地进行读取和存储的单元,网络设备是特殊设备的驱动,它负责接收和发送帧数据,可能是物理帧,也可能是ip数据包,这些特性都有网络驱动决定。
时间: 2024-11-05 17:29:14