Shared Memory via Memory-Mapped Files

Memory-mapped files 也可以用來建立 shared memory。多個 processes map 同一個 file 或 shared-memory object;它們的 virtual addresses 可以不同,但 page table 指向同一批 physical pages。

process A VA ─┐
              ├→ same physical pages
process B VA ─┘

這讓大量資料共享不必在 processes 間反覆 copy。若 mapping backed by real file,資料也可以 persistent;若 backed by special shared-memory object,則只作為 IPC region。

Shared memory 只提供共同可見的 memory,不自動處理 race condition;仍需要 mutex、semaphore 或其他 synchronization。