具有IOctl的简单字符驱动
http://www.cnblogs.com/geneil/archive/2011/12/04/2275372.html
驱动层
#include <linux/init.h>
#include <linux/module.h>
#include <linux/cdev.h>
#include <linux/fs.h>
#include <linux/device.h>
#include <linux/module.h>
#include <linux/types.h>
#include <linux/errno.h>
#include <linux/mm.h>
#include <linux/sched.h>
#include <asm/io.h>
#include <asm/system.h>
#include <asm/uaccess.h>/* 定义幻数 */
#define MEMDEV_IOC_MAGIC 'k'/* 定义命令 */
#define MEMDEV_IOCPRINT _IO(MEMDEV_IOC_MAGIC, 1)
#define MEMDEV_IOCGETDATA _IOR(MEMDEV_IOC_MAGIC, 2, int) /*获取数据*/
#define MEMDEV_IOCSETDATA _IOW(MEMDEV_IOC_MAGIC, 3, int) /*设置数据*/#define MEMDEV_IOC_MAXNR 3 /*一共定义了三条命
具有IOctl的简单字符驱动相关推荐
- 简单字符驱动笔记(朱有鹏)
框架 static int __init chrdev init(void) {printk(KERN_DEBUG "chrdev_init");return 0; }static ...
- linux2.6驱动学习笔记之字符驱动
1.字符驱动组成 1.1字符驱动的模块加载与卸载 //设备结构体模板 struct xxx_dev_t { struct cdev cdev; ...... }xxx_dev; 在字符驱动模块加载函数 ...
- 一个简单字符型设备驱动及其测试
驱动对一些人来说很难,而对一些人来说很容易.窃以为,理解简单设备驱动模型不难,深入理解并与Linux内核设计联系到一起需要花费时间.对于移植者来说,如何将自己自定义的模块天衣无缝放到内核中,是比较重要 ...
- [设备驱动] 最简单的内核设备驱动--字符驱动
[设备驱动] 最简单的内核设备驱动--字符驱动 概要: x86平台上(linux-2.6.34.14;Linux debian 3.2.0-3-686-pae)编写一个256字节的字符驱动程序.在/ ...
- linux 字符设备驱动测试,一个简单字符型设备驱动及其测试
驱动对一些人来说很难,而对一些人来说很容易.窃以为,理解简单设备驱动模型不难,深入理解并与Linux内核设计联系到一起需要花费时间.对于移植者来说,如何将自己自定义的模块天衣无缝放到内核中,是比较重要 ...
- Linux驱动编程 step-by-step (二) 简单字符设备驱动
简单字符设备驱动 1.主次设备号 主设备号标识设备连接的的驱动,此设备好由内核使用,标识在相应驱动下得对应的设备 在linux中设备号是一个32位的dev_t类型 typedef __u32 _ ...
- 简单的字符驱动例子包括读写、装载等
博主新开了个人站点,你也可以在这看到这篇文章,点击打开链接 1.实验目的:掌握简单字符设备驱动设计规范模式,设备节点创建方法,应用程序的设计和编写方法. 2.实验要求: (A.)在S3C2440(以t ...
- Linux字符驱动开发学习总结
linux驱动编写(虚拟字符设备编写) 昨天我们说了一些简单模块编写方法,但是终归没有涉及到设备的编写内容,今天我们就可以了解一下相关方面的内容,并且用一个实例来说明在linux上面设备是如何编写的. ...
- Linux内核驱动如何编写?我们先从字符驱动入门开始
几年前正式转到linux开发岗位的时候,由于项目急需编写linux驱动来控制项目采集设备(板卡),我便被安排做这一部分工作.那时候挺慌的-,在之前的一年多时间里基本都是window应用开发,对于lin ...
最新文章
- Java基础班学习笔记(13)IO流
- mongodb远程连接配置(亲测)
- python画4维图_用Python 画个六维图,涨姿势了
- git与github学习笔记
- HTML5唐诗三百首,《唐诗三百首》中王维5首五言绝句,代表了盛唐绝句的最高成就!...
- javascript for循环 日期 select
- 在Silverlight中进行图片下载
- 一个数据的乔迁奇遇记
- 打包后找不到so_RTX 3090安装cuda11.1 找不到libcusolver.so.10
- 正态分布下含绝对值的期望求解 -- 待验证
- 2015年热恋的肉肉们
- Abaqus2019+VS2019+Fortran子程序安装关联全过程亲测有效
- linux免费商用字体,免费可商用字体~文泉驿正黑体
- 软件开发的需求文档如何去写
- [android开源]简单富文本编辑器MRichEditor,图文混排算个啥
- Oracle函数保留两位小数
- ERROR in ./node_modules/element-plus/es/components/menu-item-group/style/css2.mjs 2:0-54
- BAT机器学习面试1000道
- 印象笔记粘贴HTML,【未解决】Mac中从印象笔记中拷贝图片后去VSCode中用Paste Image无法粘贴图片:There is not a image in clipboard...
- opengl绘制三维人物luweiqi
热门文章
- 关于数据库查询优化的思考
- high-speed A/D performance metrics and Amplifie...
- 如何选择合适的Web安全网关?
- 为什么每个人都应该尝试Ubuntu下篇 Why Everyone Should Try Ubuntu 分享
- VS 2005 或 VS 2008 在安装VSS 2005后,看不到源代码管理的解决办法
- 第5节 三个败家子(5)——刘封,被封印的秘密
- python爬虫爬取数据如何将br去掉_Python怎么去除爬取下来的网站中的一些转义字符串 - 收获啦...
- HTML段落,换行,字符实体
- 初学大数据之如何选择机器学习算法
- php防错处理,更好的PHP错误处理