私は cgroup の新人で、Linux サーバーで 2 つの C++ プロセスを制御するために使用しようとしています。
各プロセスの mem_limit を 1G に設定しました。これは、最大で 1GB のメモリを消費できるということですよね?
しかし、cgroup は VM のような実際の分離を保証しないと思います。たとえば、あるプロセスは別のプロセスのメモリを読み書きできます。また、cgroup は何も割り当てないため、空きメモリ ブロックを取得するために 2 つのプロセス間で競合が発生します。
- 私は正しいですか?
- cpu_set のケースはどうですか?
- 分離を考慮した cgroup と VM の違いは何ですか?
私はそれをグーグルで検索しましたが、多くの「docker vs vm」しか得られませんでした。これは本当に私が望んでいるものではありません。
cgroups の実装からのヒントは本当に役に立ちます。