日期:2014-05-16  浏览次数:20651 次

linux mmap的问题
可不可以这样呢...比如我要读的一个文件有一个G,然后写入一个新建的文件里,用mmap可以实现吗?
mmap(0,statbuf.st_size,PROT_READ,MAP_SHARED,fdin,0);
这个len参数的大小只能是文件的大小吗?为什么我改得比文件大小小了就报段错误了呢?还有后面的offset参数,要把写文件往后移该怎么做?
在网上看了很多例子,感觉都没讲到这些哎....求大神指导啊...........
Linux mmap 文件io读写

------解决方案--------------------
offset必须getpagesize()对齐。
------解决方案--------------------
你len参数传得小不会段错误的,应该是你操作有问题