我有一些代码,我经常在其中复制一大块内存,通常只对其进行非常小的更改。
我已经实现了一个跟踪更改的系统,但我认为这可能会很好,如果可能的话告诉操作系统对内存进行“写时复制”,让它只处理制作副本那些改变的部分。然而,虽然 Linux 会进行写时复制,例如当 fork()ing 时,我无法找到一种方法来控制它并自己完成。
最佳答案
你最好的机会可能是 mmap()
原始数据到文件,然后 mmap()
再次使用 MAP_PRIVATE
相同的文件.
关于我可以在 Linux 中执行写时复制 memcpy 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1565177/