Linux
CGroup 切片用於什麼
剛剛關注 systemctl status 的分支結構。我意識到我在編故事來解釋為什麼它看起來像這樣,但不知道它的含義。我找不到太多關於切片的資訊。
我的故事是他們被孤立起來。並通過讀取錯誤的地址來增加安全性……他們可能經常使用相同的虛擬切片 addys。
您能否從作業系統的角度讓我深入了解該插圖的含義?還是你的觀點……?
切片是一個系統概念。Systemd 使用 cgroups 進行切片的低級實現。這與記憶體保護無關。所有程序都有自己的獨立記憶體,沒有切片。
cgroups 是容器系統低級實現的一部分,它允許限制一組程序可以使用的資源,從而允許對系統資源進行硬劃分。這是資源分配問題,不是記憶體共享問題,在同一個分片中不會導致程序間共享記憶體。
systemd 切片系統(在服務和範圍的幫助下)允許將相關程序分組在一起(例如,使用者的會話或由多個程序組成的系統服務)。每個 slice 可以分配最大的 cpu 和 memory 資源,這可以防止單個 slice 通過執行系統資源不足而對其他 slice 造成拒絕服務攻擊。而且,它還允許將程序分組在一起,以便它們可以立即被殺死,例如,當使用者註銷時(預設情況下不啟用)。
有關詳細資訊的手冊頁
systemd.slice
。的手冊頁systemd.resource-control
列出了可以在切片中限制的資源。