#include #include #include #include #include #include #include #include #include #include #define DEVICE_NAME "leds" /* 加载模式后,执行”cat /proc/device...
分类:
其他好文 时间:
2014-10-08 15:43:25
阅读次数:
357
LS:list,列出指定路径下的所有文件默认显示当前目录下的所有文件pwd:显示当前工作的目录ls:-l长格式显示文件信息第一个字母表示文件类型文件类型:-普通文件d:目录文件b:块设备c:字符设备l:字符链接文件p:命令管道s:套接字文件后9位表示文件的权限分配,三位为一组,..
分类:
其他好文 时间:
2014-10-08 14:48:06
阅读次数:
217
Scull的设计
主设备号和次设备号
设备编号的内部表达
分配和释放设备号
动态分配主设备号
一些重要的数据结构
三个file_operations,file,inode
文件操作
file结构
inode结构
read和write
unsigned long copy_to_user(void __user *to,const void *from,...
分类:
其他好文 时间:
2014-09-26 11:01:41
阅读次数:
187
主设备号和次设备号
那些名称被称为特殊文件、设备文件,或者简单称之为文件系统树的节点,它们通常位于/dev目录通常而言,主设备号标识设备对应的驱动程序一个主设备号对应一个驱动程序设备编号的内部表达
dev_t()dev_t是一个32位的数,12位表示主设备号,其余20位表示次设备号
MAJOR(dev_t dev);MINOR(dev_t dev);MKDEV(int major...
分类:
系统相关 时间:
2014-09-23 23:48:05
阅读次数:
356
1、串行端口终端(/dev/ttySn) 串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。有段时间这些串行端口设备通常被称为终端设备,因为那时它的最大用途就是用来连接终端。这些串行端口所对应的设备名称是/dev/....
分类:
其他好文 时间:
2014-09-22 12:47:12
阅读次数:
192
0.前言 研究生生活一切都在步入正轨,我也开始了新的学习,因为实在不想搞存储,所以就决定跟师兄学习设备驱动,看了两星期书,终于有点头绪了,开始记录吧!1.准备工作 a)查看内核版本 uname -r b)安装内核源码树(http://www.cnblogs.com/Jezze/archi...
分类:
系统相关 时间:
2014-09-16 23:28:01
阅读次数:
369
1、根文件系统 /boot:系统启动相关的文件,如内核、initrd,以及grub(bootloader) /dev:设备文件(块设备/字符设备) 设备文件: 块设备:随机访问,数据块 字符设备:线性访问,按字符为单位 设备号:主设备号(major)和次设备号...
分类:
其他好文 时间:
2014-09-13 11:56:05
阅读次数:
238
第五章输入/输出IO设备大致可以分为两类:块设备、字符设备,块设备把地址存储在固定大小的块中,每个块有自己的地址,字符设备以字符为单位发送或接收一个字符流,而不考虑任何块结构。控制器的任务是把串行的位流转为字节块,并进行必要的错误校正工作。字节块通常首先在控制..
分类:
其他好文 时间:
2014-09-13 10:45:05
阅读次数:
264
linux操作系统中,文件是最基本和最重要的抽象,linux遵循一切皆文件的理念。按照不同的属性,文件可以分为普通文件和特殊文件。特殊文件是以文件方式表示的内核对象,linux支持四种类型的特殊文件: 1、块设备文件 (例如硬盘设备) 2、字符设备文件(例如键盘设备) 3、命名管道 (主要...
分类:
编程语言 时间:
2014-09-11 22:08:52
阅读次数:
301
从linux内核2.6的某个版本之后,devfs不复存在,udev成为devfs的替代。提醒一点,udev是应用层的,不要试图在内核的配置选项里找到它;加入对udev的支持很简单,以作者所写的一个字符设备驱动为例,在驱动初始化的代码里调用class_create为该设备创建一个class,再为每个设...
分类:
其他好文 时间:
2014-09-09 18:08:19
阅读次数:
203