第六章读书笔记

2.1 编写基本的Linux驱动的一般步骤:

1)建立Linux驱动的骨架(装载和卸载Linux驱动);

  2)注册和注销设备文件;

  3)指定与驱动相关的信息;

4)指定回调函数;

5)编写业务逻辑;

6)编写Makefile文件;

7)编译Linux驱动程序;

8)安装和卸载Linux驱动。

  对于一个Linux驱动程序,一开始可以在Ubuntu Linux上做前期开发和测试。对于访问硬件的部分也可以在Ubuntu Linux用软件进行模拟。当基本开发完成后,就需要在开发板或者工程样机上使用真实的硬件进行测试。最终还需要在最终销售的手机上测试。

2.2 将word_count目录加入Linux内核源代码树的步骤

1)建立新的Kconfig文件,在word_count目录中建立一个Kconfig文件,并输入如下内容:

   config WORD_COUNT

   tristate “word_count driver”

   default y

   help

   This is a word count driver.It can get a word count from /dev/wordcount

2)修改Makefile 文件

3)修改上层目录的Kconfig

      source “drivers/char/word_count/kconfig”

4)修改上层目录的Makefile文件

      obj-$(CONPIG_WORD_count/

当修改Linux 内核设置后重新编译内核,以前使用该Linux内核编译的Linux驱动模块可能由于格式错误无法安装,因此,在重新编译Linux内核后,需要重新编译Linux驱动模块。

2.3 Linux驱动测试的方法

1)使用Ubuntu Linux测试Linux驱动

2)在Android模拟器上通过原(Native) C 程序测试Linux驱动

3)使用Android NDK 测试Linux驱动

4)使用Java代码直接操作设备文件来测试Linux 驱动

5)使用开发板测试Linux驱动:

在开发板上使用可执行程序测试Linux驱动

在开发板上使用.Android NDK测试Linux驱动

在开发板上使用Java代码测试Linux驱动

6)将驱动编译进Linux内核进行测试

第1步:将源文件文件放入Linux内核源代码

第2步:修改Kconfig文件

第3步:修改Makefile文件

第4步:设置.config文件

第5步:编译Linux内核

时间: 2024-10-12 11:47:36

第六章读书笔记的相关文章

《构建之法》第一章读书笔记

工程有了一个初步的了解.介绍了软件工程里的一些基本概念,软件开发的几个阶段.软件工程的特殊性.目标以及软件工程与计算机科学之间的联系与区别.    软件工程作为一门新兴的学科,是连接计算机硬件和传统机械工程的一个桥梁.起先,我所认为的软件工程单纯的只是编程,通过算法实现正确的输出而已.但在构建之法的第一章中,我认识到会写程序只是一个合格的软件工程师最基本的素质.一个完整的项目,应该在需求分析,软件构架设计.代码实现.程序测试.软件发布运营及维护每个阶段都尽职尽责,并结合用户体验去完善软件的每一个

构建之法第六章学习心得

这周我学习了构建之法第六章敏捷流程,本章主要介绍了敏捷流程及其原则,Backlog.Burn-down.Sprint.Scrum方法论.以及什么时候选择敏捷的开发方法,什么时候选择其他方法..敏捷开发的原则是尽早并持续地交付有价值的软件以满足顾客需求敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势经常发布可用的软件,发布间隔可以从几周到几个月,能短则短业务人员和开发人员在项目开发过程中应该每天共同工作以有进取心的人为项目核心,充分支持信任他们无论团队内外,面对面的交流始终是最有效的沟通

Android深度探索——第六章读书笔记及心得

单词个数统计程序 ——第六章读书笔记及心得 通过本章的学习,学会了使用多种平台测试linux驱动开发.学会了统计单词个数的程序,通过该程序知道了该算法的实现技术为linux驱动,因为该程序的单词是封装在linux驱动中的.在此之前还对linux有了深入的了解.知道了linux驱动程序编写的步骤.了解到了一些重要的函数.学会了注册和注销设备文件.学会了制定回调函数.知道了如何在eclipse中开发和测试linux驱动程序. Linux系统将每一个驱动都映射为一个文件,称为设备文件或驱动文件,都保存

构建之法第三章读书心得

在构建之法第三章中,我们主要学习了个人能力的衡量与发展. 初级软件工程师有以下几个成长阶段:1.积累软件开发相关的知识,提升技术技能. 2.积累问题领域的知识和经验. 3.对通用的软件设计思想和软件工程思想的理解 4.提升职业技能 5.实际成果 软件开发的工作量和质量你的衡量标准:1.项目.任务有多大? 2.花了多少时间? 3.质量如何?交付的代码中有多少缺陷?

《构建之法—现代软件工程》读书笔记

今天阅读了<构建之法:现代软件工程>的第一章,受益匪浅.本来我对软件的了解只是处在最基本层面,通过阅读本书,我对软件工程的了解有了更深入的认识. 软件工程是把系统的.有序的.可量化的方法应用到软件的开发.运营和维护的过程.软件工程包括下列领域:软件需求分析.软件设计.软件构建.软件测试和软件维护.软件工程和下列学科相关:计算机科学.计算机工程.管理学.数学.项目管理学.质量管理.软件人体工学.系统工程.工业设计和用户界面设计.人们在开发.运营和维护软件的过程中有很多技术.做法.习惯和思想体系.

JavaScript高级程序设计(第3版)第六章读书笔记

第六章 面向对象的程序设计 1. 数据属性 [[Configurable]]:表示能否通过delete删除属性从而重新定义属性.默认值为true. [[Enumerable]]:表示能否通过for-in循环返回属性.默认值为true. [[Writable]]:表示能否修改属性的值,默认为true. [[Value]]:包含这个属性的数据值.默认为undefined. 要修改属性默认的特性,必须使用ECMAScript5的Object.defineProperty( )方法.接收三个参数:属性所

构建之法第六章、第七章观后感

第六章 敏捷流程 敏捷流程 “敏捷流程”是一系列价值观的方法论的集合.那么什么敏捷?敏捷是一种一人为核心.迭代.循环渐进的开发方法.是拥抱变化的开发流程. 敏捷开发的原则:    1.尽早并持续地交付有价值的软件以满足顾客需求. 2.敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势. 3.经常发布可用的软件,发布间隔可用从几周到几个月,能短则短. 4.业务人员和开发人员在项目开发过程中应该每天共同工作. 5.以有进取心的人为项目核心,充分支持信任他们. 6.无论团队内外,面对面的交流始

《构建之法》第六章读书笔记

一.敏捷的流程简介 敏捷开发的原则是: 1.尽早并持续地交付有价值的软件以满足顾客需求 2.敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势 3.经常发布可用的软件,发布间隔可以从几周到几个月,能短则短 4.业务人员和开发人员在项目开发过程中应该每天共同工作 5.以有进取心的人为项目核心,充分支持信任他们 6.无论团队内外,面对面的交流始终是最有效的沟通方式 7.可用的软件是衡量项目进展的主要指标 8.敏捷流程应能保持可持续的发展.领导.团队和用户应该能按照目前的步调持续合作下去 9.

Android深度探索(卷1)HAL与驱动开发第六章读书笔记

编写Linux驱动程序的步骤 第1步:建立Linux驱动骨架(装载和卸载Linux驱动) 第2步:注册和注销设备文件 第3步:指定于驱动相关的信息 第4步:指定回调函数 第5步:编写业务逻辑 第6步:编写Makefile文件 第7步:编译Linux驱动程序 第8步:安装和卸载Linux驱动 安装Linux驱动: # insmod word_count.ko 查看word_count是否成功安装: # lsmod | grep  word_count 卸载L inux驱动: # rmmod wor

构建之法第五章读书心得

这一章我们主要学习了团队和流程.团队简而言之就是开发一个软件工程的团队,那么团队究竟怎样在一起开发这一软件便有了多种多样的方法. 比如所有人都一起做的一窝蜂模式,但这样模式弊端很大,虽然都做了许多工作,但结合起来的成果可能还没有单人做的进度快.慢慢的发展出了一些其他的模式,比如我们在学校中,一个学霸主力,其他人打酱油,但这并不好.之后也出现了明星模式,社区模式等更好的模式 写了再改模式:这种便是我们学生中最为普遍的一种模式.不管代码怎么样,先写出来,甚至连语法错误都没有考究,整体做完后再针对问题