第一章Android系统移植与驱动开发概述 读书笔记

本文介绍了Android系统架构的四层组成,包括Linux内核、C/C++代码库、Android SDK API及应用程序,并详细讲解了Android系统移植的概念,以及如何进行Linux驱动开发,包括驱动的装载函数与卸载函数。
摘要由CSDN通过智能技术生成

      Android系统如今已经和我们的生活密不可分,因为Android的是一个非常优秀的嵌入式操作系统,许多人在使用着Android的系统的手机、平板,体验着它带给我们的便利。Android的系统架构分为4层,第一层:Linux内核,第二层:C/C++代码库,第三层:Android SDK API,第四层:应用程序。Android移植可以分为两个部分:应用移植和系统移植。应用移植是指将Android的系统架构的第四层的应用程序移植到某一个特定的平台上;而Android系统移植是指让Android操作系统在某一特定平台上运行。除了需要移植CPU架构,最重要的就是移植Linux驱动(让Android可以识别平台上的各种硬件(如声卡、显示器、蓝牙设备等))。此外Android系统中还增加了一个硬件抽象层(HAL),HAL位于Android的系统架构的第二层,也是普通的Linux程序库(.so文件),只是Android SDK通过HAL直接访问Linux驱动。

      Linux内核版本号的定义:主版本号,次版本号,修订版本号,微调版本号,和为特定的Linux系统特别调校的描述(调校描述可以是任意字符串)。Android使用的是Linux2.6,也是目前使用最广泛的linux内核版本。如果想查看Linux的版本有两种方法。(1)在Linux终端输入:uname –a。(2)在Linux终端输入:cat /proc/version(/proc不是普通的文件系统,而是系统内核的映像)。Linux将存储器和外设分为三个部分:字符设备、快设备、网络设备。驱动是直接和硬件交互的一类程序,负责对硬件进行抽象。对于任何的Linux驱动来说,都有一个装载函数(mobule_init)和一个卸载函数(module_exit)。

      对于我们来说学习Linux驱动开发需要多进行实践,在Linux系统下搭建Linux驱动的开发环境,并在支持Android的开发板上测试驱动程序是否能正确的运行。毕竟实践出真知。

转载于:https://www.cnblogs.com/sxauzzj/p/5443619.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值