原先用的字符设备驱动框架都是自己定义fops结构体,自己去实现里面的各个成员函数,然后测试程序里面打开一个设备文件open("/dev/xxx")就能通过内核调用到驱动程序里的open函数。但这个做法的前提是写应用程序的人知道有个名字叫xxx的文件才能去打开他,没有把应用和驱动很好地分开。 输入子系 ...
分类:
其他好文 时间:
2021-06-09 10:36:23
阅读次数:
0
#include <linux/module.h> // module_init module_exit #include <linux/init.h> // __init __exit #include <linux/cdev.h> #include <linux/fs.h> #define MY ...
分类:
其他好文 时间:
2021-04-01 13:34:35
阅读次数:
0
rootfs:根文件系统 /boot:系统启动相关的文件,如内核、initrd,以及grub(bootloader) /dev:设备文件 设备文件: 块文件:随机访问,数据块 字符设备:线性访问,按字符为单位 设备号:主设备号(major)和次设备号(minor) /etc:配置文件 /home:管 ...
分类:
系统相关 时间:
2021-03-15 10:49:44
阅读次数:
0
块设备是系统中能够随机(不需要按顺序)访问固定大小数据片的硬件设备,像硬盘 字符设备是按照字符流的方式被有序访问,像键盘 IO调度程序 为什么需要IO调度程序:简单的以内核产生请求的次序直接请求的话,磁盘寻址的速度会很慢,性能会很低。IO调度程序会有一定的延迟,对调度队列进行调整 请求队列 一个关于 ...
分类:
其他好文 时间:
2021-02-19 13:23:46
阅读次数:
0
static int __init hello_init(void) { printk(KERN_EMERG "[ KERN_EMERG ] Hello Module Init\n"); printk( "[ default ] Hello Module Init\n"); return 0; } ...
分类:
其他好文 时间:
2021-01-18 11:37:08
阅读次数:
0
1、linux下文件类型 b(块设备文件) c(字符设备文件) d(目录) -(普通文件) l(链接文件) s(套接字文件) p(管道文件) 在终端下,用 ll 命令查看,第一位表示文件类型 Lib@linuxU:~/桌面$ ll 总用量 92 drwxr-xr-x 2 tarena tarena ...
分类:
系统相关 时间:
2021-01-07 12:25:38
阅读次数:
0
文件及目录的增删改查 文件类型区分(七种) 普通文件(-) 目录文件(d) 字符设备文件(c) 块设备文件(b) 套接字文件(s) 管道文件(p) 软链接文件(符号链接文件)(l) 目录 创建目录 # mkdir /tmp/dir{12..15} # mkdir /tmp/DIR1 /tmp/DIR ...
分类:
其他好文 时间:
2020-12-19 12:41:55
阅读次数:
1
ioctl 是设备驱动程序中设备控制接口函数,一个字符设备驱动通常会实现设备打开、关闭、读、写等功能,在一些需要细分的情境下,如果需要扩展新的功能,通常以增设 ioctl() 命令的方式实现。 ioctl的函数定义如下: int ioctl(int fd, int cmd, ...) ; 其中各个参 ...
分类:
系统相关 时间:
2020-11-07 16:18:48
阅读次数:
21
-:表示普通文件
d:表示目录文件
b:表示块设备文件
c:表示字符设备文件
l:表示软链接文件
p:表示管道文件
s:表示套接字文件
分类:
其他好文 时间:
2020-10-21 20:51:06
阅读次数:
15
1.裸设备与文件系统IO性能结合Oracle说明20问 裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来读取的特殊字符设备。本文收集裸设备和Oracle问答20例。 1.什么叫做裸设备? 裸设备,也叫裸分区(原始分区),是一种没有经过格式化,不被Unix通过文件系统来 ...
分类:
其他好文 时间:
2020-09-17 13:42:18
阅读次数:
38