读书笔记第一章
安卓是免费的,任何人都可以利用安卓的源代码定制完全属于自己的嵌入式系统,这极大地促进了安卓的发展,但是想要在各种设备上运行安卓系统,需要为各种设备定制安卓系统,这就叫做安卓系统的移植。
安卓系统架构分为四层:1、Linux内核 2、C/C++代码库 3、Android SDK API 4、应用程序。
安卓系统移植的主要工作:除了移植CPU之外,最重要的就是移植Linux驱动,还要增加一个抽象层。
Linux内核版本:目前主要有三个:Linux2.4、Linux2.6、Linux3.x,而其中Linux2.6是使用最广泛地Linux内核版本,安卓就使用了该内核版本。
Linux驱动设备:Linux将存储和外设分为三大类:字符设备、块设备、网络设备。字符设备指那些必须以串行顺序依次访问的设备。块设备可以用任意设备进行访问,以块为单位进行。这两种设备的设计有很大差异,但是对于用户而言,他们都使用文件系统的操作接口函数进行访问。网络设备面向数据包的接收和发送而设计,他并不对应于文件系统的节点。Linux内核与网络设备的通信和Linux内核与字符设备、块设备的通信方式完全不同。