第一章 Android系统移植和驱动开发简述
核心内容总结:
Android 的系统架构分为4层:
1)linux内核(linux的驱动程序以及内存管理、进程管理、电源管理等程序)
2)C/C++代码库(使用C/C++编写的代码库、Dalivk虚拟机的运行时)
3)Android SDK API(用java编写的各种Library)
4)应用程序(所有的应用程序都属于这一层)
Android系统移植(应用移植和系统移植)的主要工作:
·移植linux驱动;
·移植HAL。
查看Linux内核版本:
方法一:在linux终端执行下面的命令
uname -a
方法二:在linux终端执行下面的命令
cat /proc/version
Linux 内核版本号的定义规则:
·主版本号;
·此版本号;
·修订版本号;
·微调版本号;
·为特定的linux系统特别调校的描述。
Linux 设备驱动:
驱动是直接和硬件交互的一类程序,负责对硬件进行抽象。
计算机系统的硬件主要由CPU、存储器和外设组成。
驱动针对的对象是存储器和外设(CPU内部集成的存储器和外设),而不是针对CPU核。
Linux将存储器和外设分为3大类:
·字符设备(指那些必须以串行顺序依次进行访问的设备);
·块设备(可以用任何顺序进行访问,以块为单位进行操作);
·网络设备(面向数据包的接受和发送而设计,它并不对应于文件系统的节点)。
Linux驱动:LED驱动
LED驱动的代码事迹很多函数和结构体(readl、writel、printk、miscdevice、module_exit等)
时间: 2024-10-12 20:22:48