| 維度 | 進程 | 線程 |
|---|---|---|
| 地址空間 | 獨立,互不干擾 | 共享同一進程空間 |
| 故障隔離 | 單進程崩潰不影響其他 | 線程崩潰導致整個進程退出 |
| 創建開銷 | 較大(複製頁表、PCB) | 極小(僅分配棧、TCB) |
| 切換開銷 | 大(TLB 刷新、地址空間切換) | 小(僅寄存器、棧指針) |
| 同步機制 | IPC(管道、共享記憶體、Socket) | 鎖、條件變量、信號量(共享記憶體天然) |
| 適用場景 | 獨立任務、安全隔離、不同用戶權限 | 高並發、數據共享密集、實時性要求高 |
fork() 採用 COW,進程創建開銷大幅降低。pthread(POSIX 標準),注意編譯加 -pthread。fork()(僅複製調用線程,鎖狀態不一致極易死鎖)。