mmaped文件中不同页面之间的写入顺序(在Linux上)

时间:2019-05-02 19:41:38

标签: linux shared-memory mmap

对于不同页面之间对文件系统的写入顺序,Linux分页系统能提供什么保证?

特别是我正在通过mmap将某些记录“序列化”到文件中。任何单个记录/数据项都可能跨越多个页面。现在,假设机器崩溃了。恢复后如何丢弃部分书面记录?

a)如果我在每个记录前添加一个长度,并以“结束”定界符结束。我可以假定存在“结束”定界符以指示整个记录已写入吗?即使长度和“结尾”可以在不同的页面上? Linux分页子系统是否保证脏页的写入顺序?

b)如果我跟踪通过另一个文件写记录的完成情况怎么办?通过mmapped区域写入文件时,文件之间是否有“先发生”保证?

0 个答案:

没有答案