锁定老帖子 主题:File Mapping析疑
精华帖 (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。 一个进程可以建立两种不同类型的文件映射 -- 共享和私有。当进程写页面的时候,对于共享映射,直接修改被映射的对象。内核直接修改页面的共享副本,然后在刷新页面时将它们写回磁盘上的文件。如果映射是私有的,任何修改动作都会生成页面的一个副本,然后仅修改该页面。这样写操作不会修改相应的对象,即内核在刷新页面时不会将修改写回文件。 |
|
返回顶楼 | |