Linux设备驱动程序
文章平均质量分 88
xhy_851221
这个作者很懒,什么都没留下…
展开
-
第三章字符设备驱动(1)--分配和释放设备号
一.主设备号和次设备号 主设备号表示设备对应的驱动程序;次设备号由内核使用,用于正确确定设备文件所指的设备。内核用dev_t类型()来保存设备编号,dev_t是一个32位的数,12位表示主设备号,20为表示次设备号。在实际使用中,是通过中定义的宏来转换格式。 (dev_t)-->主设备号、次设备号 M原创 2009-12-07 22:47:00 · 1354 阅读 · 0 评论 -
第三章字符设备驱动(2)—设备操作函数
本节主要学习设备操作函数,open()与release()函数,read()和write()函数。在学习这些函数之前,先学习三个非常重要的数据结构。一.主要数据结构1.文件操作struct file_operations 上一节中,我们已经为自己保留了一些设备编号,但是尚未将任何驱动程序操作连接到这些编号。file_operations结构就是用来建立这种连接的。原创 2009-12-07 22:55:00 · 1027 阅读 · 0 评论 -
第五章并发和竟态
在之前的scull例子中,我们都没有考虑并发问题。但是,对并发的管理是操作系统编程中核心的问题之一。早期的linux内核不支持对称多处理(SMP),因此,导致并发执行的唯一原因是对硬件中断的服务。但是随着多核的出现,并发问题将越来越多的出现在我们的程序中,本章就来学习如何处理并发问题。一.并发及其管理竞态通常是作为对资源的共享访问结果而产生的。在设计自己的驱动程序时,第原创 2009-12-14 22:53:00 · 988 阅读 · 0 评论