- 博客(6)
- 收藏
- 关注
转载 Linux中直接I/O机制的介绍
转自:https://www.ibm.com/developerworks/cn/linux/l-cn-directio/1.直接 I/O 的动机在介绍直接 I/O 之前,这一小节先介绍一下为什么会出现直接 I/O 这种机制,即传统的 I/O 操作存在哪些缺点。1.1什么是缓存 I/O (Buffered I/O)缓存 I/O 又被称作标准 I/O,大多数文件系统的默认
2013-05-30 10:16:04 610
转载 remap_pfn_range()详解
remap_pfn_range()函数的原型:int remap_pfn_range(struct vm_area_struct *vma, unsigned long virt_addr, unsigned long pfn, unsigned long size, pgprot_t prot);该函数的功能是创建页表。其中参数vma是内核根据用户的请求自己填写的,而参数addr表示内存
2013-05-28 17:08:55 1661
转载 同步通信和异步通信
所谓同步通信,就是发送方和接收方在发送接收消息的时候必须设定一个公用的时钟频率来保持同步,通信时基本是连续不中断的。所谓异步通信,就是发送方发送消息后,接收方不必随时监听有没有传过来的消息,但传送的消息必须有起始位、校验位和结束位等信号,确保接收的信息不出错。举个简单的例子:大家平时都用的qq就包含这样的思想。 我们用的文件传输功能可以看成是同步通信的典范。首先传文件的双方
2013-05-21 20:48:34 843
原创 内核模块编写,编译,加载和卸载过程
1.编写hello.c内核模块<!--@page {margin:2cm}p {margin-bottom:0.21cm}a:link {}-->//hello.c#include#includestaticint hello_init(void){printk(KERN_INFO"hello world enter\n");
2013-05-02 22:03:06 2096
原创 内核模块编译--Makefile写法
内核模块编译-Makefile写法如果编译内核模块,可以编写Makefile,然后执行make命令即可。Linux2.6的Makefile模板如下:#Makefile2.6ifneq ($(KERNELRELEASE),)#kbuild syntax. dependency relationship of files and target modules are list
2013-05-02 21:31:04 1120
原创 内核模块程序结构
<!--@page {margin:2cm}p {margin-bottom:0.21cm}-->1.模块加载函数(必须)模块加载函数必须以“module_init(函数名)”的形式被指定。若初始化成功则返回0,否则返回错误编码。struct int __init initialization_funcfction(void){ /*初始化
2013-05-02 19:47:12 681
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人