热门推荐
一级建造师各专业难度排行!哪个专业容易通过?
报考一级建造师对所在单位的资质要求解析
一建二建证书与B证什么关系?
一建的补考难度如何?和正考对比哪个比较难?
一级建造师到底是什么?为什么有那么多人报考?
一级建造师和中级职称之间有什么关系呢?
考完一建证书,还有哪些证书值得你考
一级建造师考试的通过率大致受哪些因素影响?
linux自动加载驱动的原理
Linux设备驱动程序工作原理
Linux是Unix操作系统的一种变种,在Linux下编写驱动程序的原理和思想完全类似于其他的Unix系统。在Linux环境下设计驱动程序,思想简洁,操作方便,功能也很强大,但是支持函数少,只能依赖kernel中的函数,有些常用的操作要自己来编写,而且调试也不方便。
系统调用是操作系统内核和应用程序之间的接口,设备驱动程序是操作系统内核和机器硬件之间的接口。设备驱动程序为应用程序屏蔽了硬件的细节,这样在应用程序看来,硬件设备只是一个设备文件, 应用程序可以象操作普通文件一样对硬件设备进行操作。设备驱动程序是内核的一部分,运行在核心态,它完成以下的功能:
1.对设备初始化和释放.
2.把数据从内核传送到硬件和从硬件读取数据.
3.读取应用程序传送给设备文件的数据和回送应用程序请求的数据.
4.检测和处理设备出现的错误.
在Linux操作系统下有三类主要的设备文件类型:字符设备、块设备和网络接口。字符设备和块设备的主要区别是:在对字符设备发出读/写请求时,实际的硬件I/O一般就紧接着发生了,块设备则不然,它利用一块系统内存作缓冲区,当用户进程对设备请求能满足用户的要求,就返回请求的数据,如果不能,就调用请求函数来进行实际的I/O操作。块设备是主要针对磁盘等慢速设备设计的,以免耗费过多的CPU时间来等待。
已经提到,用户进程是通过设备文件来与实际的硬件打交道。每个设备文件都有其文件属性(c/b),表示是字符设备还是块设备 另 外每个文件都有两个设备号,第一个是主设备号,标识驱动程序,第二个是从设备号,标识使用同一个设备驱动程序的不同的硬件设备,比如有两个软盘,就可以用 从设备号来区分他们。设备文件的的主设备号必须与设备驱动程序在登记时申请的主设备号一致,否则用户进程将无法访问到驱动程序。
最后必须提到的是,在用户进程调用驱动程序时,系统进入核心态,这时不再是抢先式调度。也就是说,系统必须在你的驱动程序的子函数返回后才能进行
由于用户进程是通过设备文件同硬件打交道,对设备文件的操作方式不外乎就是一些系统调用,如 open,read,write,close...., 注意,不是fopen, fread,但是如何把系统调用和驱动程序关联起来呢
猜你喜欢内容
-
一级建造师各专业难度排行!哪个专业容易通过?
随着我国建筑行业的快速发展,一级建造师证书成为了众多建筑从业者的追求目标。然而,面对十个不同的专...
-
报考一级建造师对所在单位的资质要求解析
许多考生在准备报考一级建造师时,对于所在单位的资质要求存在疑问。本文将为您详细解析一级建造师报考...
-
一建二建证书与B证什么关系?
有考生咨询,这个安全B证和建造师证书有什么关系?有的话会价值会更高吗?对一二建是必拿证吗?一起来和...
-
一建的补考难度如何?和正考对比哪个比较难?
9月21号和9月22号,海南省、广东省、广西省部分考生参加了一建的补考。大家想知道补考的难度吗?和正考...
-
一级建造师到底是什么?为什么有那么多人报考?
一级建造师定义:一级建造师,是建设工程行业的一种执业资格,是担任大型工程项目经理的前提条件。建造...
-
一级建造师和中级职称之间有什么关系呢?
一级建造师和中级职称是工程建设领域中,非常重要的两个证书。它们之间存在一定的关联和替代关系。一级...
-
考完一建证书,还有哪些证书值得你考
一建考试已经过去,有很多考生向小编反映,想要趁着基础和实力还处在良好状态的情况下,再接再厉考取更...
-
一级建造师考试的通过率大致受哪些因素影响?
一级建造师考试的通过率是一个动态变化的数据,受到多种因素的影响,包括考试难度、报考人数、政策变化...
-
一级建造师增项考试:科目要求与专业选择
一级建造师增项考试是许多已经取得一级建造师执业资格的人员进一步提升自己执业范围的途径。本文将为您...
-
一级建造师考试增项专业如何选择?
选择一级建造师增项专业时,应考虑本专业相关性、两专业的关联性、市场需求和发展前景,以及所在企业的...





















