cgroups-v2を学んで練習しようとしています。cgroups-v2 ドキュメント入力pidを宣言することはcgroups-v2にプログラムを追加する唯一の方法です。 cgroups-v2にプログラムの実行可能ファイルを追加する他の方法はありますか?
つまり、次のことを行う代わりに:
echo "34578" > /sys/fs/cgroup/Example/tasks/cgroup.procs
次の実行可能ファイルを使用してこれを実行できます。
echo "/usr/bin/firefox/firefox > /sys/fs/cgroup/Example/tasks/cgroup.procs
リソースを制御するには、毎回プログラムのpidが何であるかを知る必要がありますか? (また、次のようにして同様のことができることがわかりました。システム実行中存在するシステム実行ソリューションしかし、cgroups-v2を学ぼうとしているので、話題から抜け出しました。)。
答え1
はい、PIDを知る必要があります。
たとえば、/bin/sh
20 の異なるプロセスを実行でき、これらのプロセスは異なる cgroup に存在する必要があります。したがって、実行可能ファイルを分割することは実際には意味がありません!
しかし、一度だけ実行されるプログラムのPIDを見つけるのは簡単です。
pidof firefox > /sys/fs/cgroup/Example/tasks/cgroup.procs
あなたが言いたいことを言うでしょう。ただし、Firefox(および他の同様のブラウザ)は複数のプロセスを生成するため、これが必要かどうかは疑わしいです。