### 共享內存
對于共享內存是好是壞,我們不能妄下定論,不過學習一下總是好的。
不同進程之間內存空間是獨立的,也就是說進程不能訪問也不會干擾其他進程的內存。如果兩個進程希望通過共享內存的方式通信呢?可以通過`mmap()`系統調用實現。
### Go實例
Go也實現了`mmap()`函數支持共享內存,不過也是通過cgo來調用C實現的系統調用函數。Cgo是什么?它是Go調用C語言模塊的功能,當然這種調用很可能是平臺相關的,也就是無法保證在Windows也能正確運行。
具體代碼參見[Golang對共享內存的操作](http://studygolang.com/articles/743),有時間我們也愿意寫一個更簡單易懂的例子。
- 前言
- 致謝
- 概述
- 使用代碼
- 使用Docker
- 進程基礎
- 進程是什么
- Hello World
- PID
- PPID
- 使用PID
- 進程名字
- 進程參數
- 輸入與輸出
- 并發與并行
- 進程越多越好
- 進程狀態
- 退出碼
- 進程資源
- 死鎖
- 活鎖
- POSIX
- Nohup
- 運行進程
- Go編程實例
- 衍生新進程
- 執行外部程序
- 復制進程
- 進程進階
- 文件鎖
- 孤兒進程
- 僵尸進程
- 守護進程
- 進程間通信
- 信號
- Linux系統調用
- 文件描述符
- Epoll
- 共享內存
- Copy On Write
- Cgroups
- Namespaces
- 項目實例Run
- 項目架構
- 代碼實現
- 注意事項
- 創建目錄權限
- 捕獲SIGKILL
- Sendfile系統調用
- 后記
- 參考書籍
- 項目學習
- 再次感謝