论坛首页 综合技术论坛

File Mapping析疑

浏览 12607 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-01-20  
七猫 写道
实际操作中file mapping在数据commit上我个人认为除了我说的节省调用和COPY的时间,其他并没有做太多的优化。


mmap 语法如下:

paddr = mmap( addr, len, prot, flags, fd, offset );
mmap 建立由 fd 代表的文件字节范围 [offset, offset + len) 到调用进程地址范围 [paddr, paddr + len] 上的映射。 flags 指定映射类型,可以是 MAP_SHARED 或 MAP_PRIVATE。

一个进程可以建立两种不同类型的文件映射 -- 共享和私有。当进程写页面的时候,对于共享映射,直接修改被映射的对象。内核直接修改页面的共享副本,然后在刷新页面时将它们写回磁盘上的文件。如果映射是私有的,任何修改动作都会生成页面的一个副本,然后仅修改该页面。这样写操作不会修改相应的对象,即内核在刷新页面时不会将修改写回文件。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics