Android的系统架构分为四层:Linux内核,c/c++代码库,Android SDK API,应用程序。
Android移植可分为俩部分:应用移植和系统移植。其中系统移植是指让Android操作系统在某一个特定硬件平台上运行,使一个操作系统在特定硬件平台上运行的首要田间就是操作系统支持硬件平台的CPU架构!Android移植的只要工作只要有俩部分:移植Linux驱动、移植HAL。
想要查看Linux系统的内核版本只要有俩种方法:
(1)在Linux终端执行uname-a
(2)在Linux终端执行cat /proc/version
虽然Linux的内核版本更新快但是,但是掌握了一个内核版本的驱动开发,其他Linux内核版本也就容易掌握了。GNUC是学习Linux驱动的一个必须掌握的技术!测试的时候在运用一个开发板这样有利于学习成绩的提高!
驱动是直接和硬件监护的一类程序,负责对硬件进行抽象!
如果应用程序直接访问硬件,就会造成与硬件耦合度过高的情况,软件通过降低对象与对象之间耦合度的最有效的方法就是通过接口对类进行抽象,抽象度越高,耦合度越低!
计算机系统的硬件主要是由CPU、存储器和外设组成。驱动针对的对象是存储器和外设,而不是针对CPU核。Linux将存储器和外设分为三类:字符设备、块设备、网路设备。
壮哉函数和卸载函数分别通过mobule-init和module-exit宏指定。
时间: 2024-11-10 11:37:11