自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

转载 Linux设备驱动程序笔记(5)

第五章 中断处理 • 中断处理流程 1、发生中断时,CPU执行异常向量vector_irq的代码。 2、在vector_irq里面,最终会调用中断处理的总入口函数asm_do_IRQ。 3、asm_do_IRQ根据中断号调用irq_desc数组项中的handle_irq。 4、hadnle_irq会使用chip成员中的函数来设置硬件,比如清除中断、禁止中断、重...

2018-12-20 10:32:15 174

转载 Linux设备驱动程序笔记(4)

第四章 并发和竞态 • 并发及其管理 大部分竞态可通过使用内核的并发控制原语,并应用几个基本的原理来避免。第一个规则是,只要可能,就应该避免资源的共享,这种思想的明显应用就是避免使用全局变量。但硬件资源本质上就是共享的,软件资源经常需要对其他执行线程可用。全局变量并不是共享数据的唯一途径,只要我们的代码将一个指针传递给了内核的其他部分,一个新的共享就可能建立。在单个执行线程之外共享硬件...

2018-12-20 10:30:40 197

转载 Linux设备驱动程序笔记(3)

第三章 字符设备驱动程序 • 主设备号和次设备号 对字符设备的访问是通过文件系统内的设备名称进行的。那些设备名称简单称之为文件系统树的节点,它们通常位于/dev目录。字符设备驱动程序的设备文件可通过ls -l命令输出的第一列中的’c’来识别。块设备同样位于/dev下,由字符'b'标识。 主设备号标识设备对应的驱动程序,现代的Linux内核允许多个驱动程序共享主设备号,但大多数...

2018-12-20 10:27:56 114

转载 Linux设备驱动程序笔记(2)

第二章 构造和运行模块 • 核心模块与应用程序的对比 1.内核模块与应用程序之间的种种不同: a.大多数小规模及中规模应用程序是从头到尾执行单个任务,而模块却只是预先注册自己以便服务于将来的某个请求,然后它的初始化函数就立即结束。 b.事件驱动的应用程序和内核代码之间的另一个不同是:应用程序在退出时,可以不管资源的释放或者其他的清除工作,但模块的退出函数却必须仔细撤销初始化函...

2018-12-20 10:23:30 171

转载 Linux设备驱动程序笔记(1)

Linux设备驱动程序笔记(1) 第一章 设备驱动程序简介 • 设备驱动程序的作用 从一个角度看,设备驱动程序的作用在于提供机制,而不是策略。在编写驱动程序时,程序员应该特别注意下面这个基本概念:编写访问硬件的内核代码时,不要给用户强加任何特定策略。因为不同的用户有不同的需求,驱动程序应该处理如何使硬件可用的问题,而将怎样使用硬件的问题留给上层应用程序。 从另一个角度来看驱动...

2018-12-20 10:17:33 142

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除