手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

linux实现简单的mmap内存映射文件

时间:2024-11-04 03:43:18

1、如图所示,输入以下代码。首先新建一个文件,写入一些内容。方便后续测试读文件内容。

linux实现简单的mmap内存映射文件

2、然后,使用mmap函数,映射文件。使用mmap映射文件到进程后,就可以直接操作烂瘀佐栾这段虚拟地址进行文件的读写等操作,不必硼讷侍逖再调用read,write等系统调用.但需注意,直接对该段内存写时不会写入超过当前文件大小的内容.同时注意:mmap()返回被映射区的指针,munmap()返回0。失败时,mmap()返回MAP_FAILED[其值为(void*)-1]

linux实现简单的mmap内存映射文件

3、如图所示,我们通过内存映射文件技术进行读取内容。通过指定偏移和指定长度,读取相应的内容。比如,指定偏移为4,读取长度为9个字节

linux实现简单的mmap内存映射文件

4、如图所示,程序最后,解除映射关系。munmap()

linux实现简单的mmap内存映射文件

5、如图所示,程序成功读取出文件内容

linux实现简单的mmap内存映射文件

6、如箭头所示,读取内容正确。

linux实现简单的mmap内存映射文件
© 手抄报圈