![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 64
普通网友
这个作者很懒,什么都没留下…
展开
-
DirectIO方式读写文件
DirectIO方式读写文件,只需在打开文件时选上O_DIRECT选项就行,但必须在所有的include前加上#define _GNU_SOURCE,另外以DirectIO方式读写时,开辟的Buffer必须是系统每页大小的整数倍而且必须移页大小为标准对齐,例如linux2.6下每页是4096byt(函数getpagesize()),申请的buffer大小只能是4096的整数倍例子:(te原创 2007-04-06 16:56:00 · 2297 阅读 · 0 评论 -
linux 2.6 下file_operations下函数详解
注释基于kernel 2.6.15structfile_operations{ struct module *owner; // 指向拥有该结构的模块的指针,避免正在操作时被卸载,一般为初始化为THIS_MODULES loff_t (*llseek) (struct file *, loff_t, int); //原创 2007-04-06 17:02:00 · 1807 阅读 · 0 评论 -
Linux2.6下内核模块编译
Linux2.6下内核模块编译经过几天的努力,自己写的内核模块终于可以在linux2.6下编译并加载道内核中了,现在对这几天的努力做个总结。在旧的版本下(如linux 2.4)linux内核模块的编译只需要有内核的头文件就行了,就可以通过和编译其他程序一样的方法编译成filename.o文件,这个.o文件是直接可以加载道内核中的,加载之后就可以用了,然而在2.6下就截然不同了,在li原创 2007-04-06 17:07:00 · 1612 阅读 · 0 评论 -
获取系统不识别的内存方法:mmap
获取系统不使用的内存方法:mmap要求:修改/boot/grub/menu.list 将 kernel /vmlinuz-2.6.15-1.2054_FC5 ro root=/dev/VolGroup00/LogVol00 rhgb quiet 改为 kernel /vmlinuz-2.6.15-1.2054_FC5 ro root=/dev/VolGroup00/LogVol0原创 2007-04-06 18:11:00 · 850 阅读 · 0 评论