Skip to content

Commit

Permalink
GitBook: [#57] No subject
Browse files Browse the repository at this point in the history
  • Loading branch information
webxiaohua authored and gitbook-bot committed Jan 6, 2022
1 parent e25ba3e commit c762c5b
Showing 1 changed file with 8 additions and 0 deletions.
8 changes: 8 additions & 0 deletions 21.-ni-guan-zhe-po-wan-yi-jiao-mmap.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,15 @@ read(fd, buf, 1024);

![](.gitbook/assets/21\_11.jpg)

mmap就这样很神奇和动态链接库联动起来了。 

## 总结 

mmap在博主眼里是一种很独特的机制,这种机制最大的诱惑在于可以像读写内存样方便的操作磁盘文件,这简直就像魔法一样,因此在一些场景下可以简化代码设计。 

但谈到mmap的与标准IO(read/write)的性能情况就比较复杂了,标准IO设计到系统调用以及用户态内核态的copy问题,而mmap则涉及到维持内存与磁盘文件的映射关系以及缺页处理的开销,单纯的从理论分析这二者半斤八两,如果你的应用场景对性能要求较高,那么你需要基于真实场景进行测试。 

我是小风哥,希望这篇文章对大家理解mmap有所帮助。



Expand Down

0 comments on commit c762c5b

Please sign in to comment.