技术咨询:一个页面是否可同时存在于两个working set中?
页面能否同时属于两个Working Set?
- 结论:完全可以,这是操作系统内存管理里的常规场景,不会必然引发问题。
- 核心逻辑:Working Set是进程当前活跃使用的页面集合,当多个进程共享同一段物理内存页(比如系统共享库、内存映射的共享文件)时,这个物理页会同时被纳入所有共享它的进程的Working Set。
- 为什么不会出问题:操作系统靠虚拟内存机制隔离进程地址空间,每个进程看到的是独立的虚拟地址,底层映射到同一块物理页。如果是只读共享页(像系统库的代码段),多进程同时读取完全安全,还能节省物理内存;如果是可读写共享数据,只要做好同步(比如互斥锁),也能避免冲突。
- 补充:你担心的共享问题,本质是并发编程的同步问题,和页面是否属于多个Working Set本身没有直接关系。
内容的提问来源于stack exchange,提问作者Brad Goodall
相关产品推荐
相关产品推荐

