码迷,mamicode.com
首页 >  
搜索关键字:linux设备驱动    ( 354个结果
LINUX设备驱动程序笔记(一)设备驱动程序简介
:设备驱动程序的作用        从一个角度看,设备驱动程序的作用在于提供机制,而不是策略。在编写驱动程序时,程序员应该特别注意下面这个基本概念:编写访问硬件的内核代码时,不要给用户强加任何特定策略。因为不同的用户有不同的需求,驱动程序应该处理如何使硬件可用的问题,而将怎样使用硬件的问题留给上层应用程序。        从另一个角度来看驱动程序,它还可以看作是应用程序和实际设备之间的...
分类:系统相关   时间:2014-08-27 09:28:27    阅读次数:250
LINUX设备驱动程序笔记(二)构造和运行模块
一>:设置测试系统          首先准备好一个内核源码树,构造一个新内核,然后安装到自己的系统中。           二>:HelloWorld模块 #include //定义了驱动的初始化和退出相关的函数 #include //定义了内核模块相关的函数、变量及宏 MODULE_LICENSE("Dual BSD/GPL"); //该宏告诉内核,该模块...
分类:系统相关   时间:2014-08-27 09:27:57    阅读次数:320
LINUX设备驱动程序笔记(三)字符设备驱动程序
.主设备号和次设备号        对字符设备的访问时通过文件系统内的设备名称进行的。那些设备名称简单称之为文件系统树的节点,它们通常位于/dev目录。字符设备驱动程序的设备文件可通过ls -l命令输出的第一列中的'c'来识别。块设备同样位于/dev下,由字符'b'标识 crw-rw----  1 root root    253,   0 2013-09-11 20:33 usbmon0 ...
分类:系统相关   时间:2014-08-27 09:27:49    阅读次数:346
LINUX设备驱动程序笔记(四)并发和竞态
.并发及其管理        大部分竞态可通过使用内核的并发控制原语,并应用几个基本的原理来避免。第一个规则是,只要可能,就应该避免资源的共享,这种思想的明显应用就是避免使用全局变量。但硬件资源本质上就是共享的,软件资源经常需要对其他执行线程可用。全局变量并不是共享数据的唯一途径,只要我们的代码将一个指针传递给了内核的其他部分,一个新的共享就可能建立。在单个执行线程之外共享硬...
分类:系统相关   时间:2014-08-27 09:27:38    阅读次数:260
LINUX设备驱动程序笔记(五)中断处理
中断处理流程如下:      1、发生中断时,CPU执行异常向量vector_irq的代码。      2、在vector_irq里面,最终会调用中断处理的总入口函数asm_do_IRQ。      3、asm_do_IRQ根据中断号调用irq_desc数组项中的handle_irq。      4、hadnle_irq会使用chip成员中的函数来设置硬件,比如...
分类:系统相关   时间:2014-08-27 09:27:31    阅读次数:275
Linux设备驱动中的ioctl
memdev.h #ifndef _MEMDEV_H #define _MEMDEV_H #define MEM_MAGIC 'm' #define MEM_RESTART _IO(MEM_MAGIC, 0)//使用内核提供的宏产生命令, #define MEM_SET _IOW(MEM_MAGIC, 1, int)//改命令向内核传递一个整形的参数 #endif 驱动程序memd...
分类:系统相关   时间:2014-08-24 14:13:42    阅读次数:332
Linux设备驱动实现自动创建设备节点
#include #include #include #include #include #include #include #define DRIVERNAME "xxx" #define DEV_MINOR 0 static dev_t xxx_devno = 0; static struct class * xxx_class; struct xxx_dev { st...
分类:系统相关   时间:2014-08-24 14:13:02    阅读次数:298
LINUX设备驱动程序笔记(五)中断处理
中断处理流程如下: 1、发生中断时,CPU执行异常向量vector...
分类:系统相关   时间:2014-08-21 17:22:54    阅读次数:247
LINUX设备驱动程序笔记(一)设备驱动程序简介
:设备驱动程序的作用        从一个角度看,设备驱动程序的作用在于提供机制,而不是策略。在编写驱动程序时,程序员应该特别注意下面这个基本概念:编写访问硬件的内核代码时,不要给用户强加任何特定策略。因为不同的用户有不同的需求,驱动程序应该处理如何使硬件可用的问题,而将怎样使用硬件的问题留给上层应用程序。        从另一个角度来看驱动程序,它还可以看作是应用程序和实际设备之间的一个软件...
分类:系统相关   时间:2014-08-18 22:10:03    阅读次数:309
LINUX设备驱动程序笔记(二)构造和运行模块
一>:设置测试系统          首先准备好一个内核源码树,构造一个新内核,然后安装到自己的系统中。           二>:HelloWorld模块 #include //定义了驱动的初始化和退出相关的函数 #include //定义了内核模块相关的函数、变量及宏 MODULE_LICENSE("Dual BSD/GPL"); //该宏告诉内核,该模块采用自由许可证...
分类:系统相关   时间:2014-08-18 22:08:53    阅读次数:472
354条   上一页 1 ... 31 32 33 34 35 36 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!