Linux内核输入输出API及系统接口详解
1. 内核输入输出API优先级问题
内核API提供了两组用于实现输入输出的替代函数集。当两组函数都被定义时,会出现哪个函数会被执行以及哪个方法具有优先级的问题。为了解决这个问题,制作了mod_2.c模块。以下是不同情况的测试结果:
- 定义了文件操作表 :
bash $ sudo insmod mod_2.ko mode=1 $ cat /proc/mod_node .........1.........2.........3.........4.........5 $ dmesg | tail -n30 | grep -v ^audit ! /proc/mod_node installed ! read: 32768 bytes ! return 51 bytes ! read: 32768 bytes ! EOF $ sudo rmmod mod_2
- 未定义文件操作表,使用/proc读取函数 :
bash $ sudo insmod mod_2.ko mode=2 $ cat /proc/mod_node .........1.........2.........3.........4.........5.........6 $ dmesg | tail -n30 | grep -v ^audit ! /proc/mod_node installed ! read: 3072 (buffer=f1629000, off=0) ! return bytes: 61 ... EOF ! read: 3072 (bu
超级会员免费看
订阅专栏 解锁全文
2976

被折叠的 条评论
为什么被折叠?



