Android深度探索-卷1读后感 第一章 安卓系统移植与驱动开发概述

Android深度探索-卷1读后感程序员

                            ————陈昊楠编程

           第一章  安卓系统移植与驱动开发概述架构

这一章主要归纳的介绍了安卓驱动开发和系统移植的主要内容,对安卓与Linux驱动作了一个整体的介绍。经过对第一章的学习,使我对Linux驱动开发有了一个感性的认识。在学习过程当中,首先,我经过以往上课时学习到的知识和查阅资料了解了一些专业词汇的含义(例如:.so文件:共享库,是shared object,用于动态链接;SDK:软件开发工具包;API:应用程序编程接口;HAL:硬件抽象层等),为之后更好的学习安卓驱动开发打下了基础。框架

其次在了解了一些专业基础的前提下,经过对第一章的学习我了解到,目前,安卓系统已经造成了很是完善的架构,主要包括Linux内核、核心库及环境(C/C++代码库和Runtime)、安卓软件开发工具包(应用框架)和应用程序。工具

    Android移植可分为两部分:分别是应用移植与系统移植。本书主要介绍的是系统移植,是指让Android操做系统在某一个特定硬件平台上运行。这么作要求该操做系统支持硬件平台的CPU架构,还要让Android能够识别平台上的各类硬件。所以,系统移植除了移植CPU架构外,最重要的就是移植Linux驱动。除了Linux驱动移植外,安卓系统还独有HAL硬件抽象层,它位于安卓系统与Linux系统之间,在安卓访问Linux时起到做用。以此,安卓移植就分红了Linux驱动移植和HAL移植。学习

    咱们都知道Android是基于Linux内核的,由于一直以来Linux是开源的,因此基于Linux内核的Android也号称开源,因此一经推出后就受到了广大程序员和手机厂商的青睐。可是在开源方面Android“半遮半掩”,具体缘由得从Android的发展历史谈起。开发工具

好比全部为Android写的硬件驱动都不能合并到Kernel中。这些驱动程序只能在Google代码中有效,而在Kernel中根本无法用。正是由于这个缘由,Google从不把大量的硬件驱动程序和平台源码提交给Kernel。  既然硬件厂商都不开源驱动代码,对于咱们生存在Android底层的开发人员,特别是从事驱动开发的成员来讲,就带来了巨大的就业机会。咱们能够为硬件厂商开发不开源的驱动程序而得到报酬,为此随着Android的异常火爆,市面上有不少企业在招聘Android驱动开发人员。因而可知,驱动的不开源给咱们的学习带来了难题,但一样也为之后的就业机会增长了砝码。学习Linux须要作的事情有如下几件:准备一个本身熟悉的Linux操做系统,用于开发和测试Linux驱动,建议使用Ubuntu Linux10.04及以上版本、准备一块开发板(建议采用基于ARM11的开发板)、学习GNUC、学习相关的硬件知识、不断地实践。测试

相关文章
相关标签/搜索