随笔分类 -  Linux驱动开发

摘要:1. 设备号主设备号:用来标识与设备文件相关的驱动程序,——反应设备类型次设备号:为内核所用,被驱动程序用来辨别操作那个设备文件——区分同类型的具体某个设备1.1 设备号的内部表达在内核中,保存设备号(包括主设备号和此设备好)使用类型dev_t ()这是一个unsigned int是一个32位的无符... 阅读全文
posted @ 2013-08-14 12:22 Windeal 阅读(2072) 评论(0) 推荐(0)
摘要:本文介绍Linux字符设备的静态注册方法,其中涉及到的模块加载,不了解的可以先参考构建和运行模块1. 还是线上源代码://memdev.h#ifndef _MEMDEV_H_#define _MEMDEV_H_#ifndef MEMDEV_MAJOR#define MEMDEV_MAJOR 200#... 阅读全文
posted @ 2013-08-14 12:18 Windeal 阅读(315) 评论(0) 推荐(0)
摘要:Hello world模块本文介绍如何向内核中添加一个hello模块。该模块的功能是在模块加载时,向系统日志输出“hello world\n” 在模块卸载时输出“Good bye,cruel world!".一个模块源代码一般有含有一个init函数(加载时调用)和一个exit函数(卸载时调用)。这两... 阅读全文
posted @ 2013-08-14 12:16 Windeal 阅读(366) 评论(0) 推荐(0)
摘要:在写Linux驱动是,sudo insmod ***.ko时出现错误:insmod: error inserting 'memdev.ko': -1 File exists原因可能是你以前同名的驱动没有卸载干净。解决方法:使用lsmod | grep *** 查看是否已经存在该模块,如果存在***,... 阅读全文
posted @ 2013-06-07 18:02 Windeal 阅读(2814) 评论(0) 推荐(0)