follow me

CPU limitはどのようにCPUリソースを制限するのか?

UNIX系OSで指定したプロセスのCPUリソースの使用を制限するプログラムとしてCPU limitは以前紹介しましたが。
実際にどのように使用リソースの制限をしているのでしょうか。

ソースをのぞいてみてシンプルさに驚いたw
kill(pid,SIGCONT)
kill(pid,SIGSTOP)
この2個だけですね。

SIGSTOPシグナルでプロセスを一時停止させて休ませて、SIGCONTシグナルでまた戻す。
これを短時間で繰り返すだけですか。

PIDを自身のPIDではなく、親PIDみて制限するように改良して、
複数同時に立ち上がってるプロセスへのリソースの分配方法を決めてやれば、
ごちゃごちゃプロセス起動するプログラムでも制限かけれそうですね~。

う~ん、どうやって分配すれば綺麗に動くんですかね~?
CPU limitはどのようにCPUリソースを制限するのか? | 0 件のコメント | アカウント登録
サイト管理者はコメントに関する責任を負いません。