GNU/Linux >> Linux の 問題 >  >> Linux

Linux でのスケジューリング:コンピューターがアイドル状態のときにタスクを実行 (=ユーザー入力なし)

問題のマシンがデスクトップの場合、開始/停止スクリプトをスクリーンセーバーにフックして、スクリーンセーバーが非アクティブのときにプロセスを停止し、その逆も可能です。


プロセスが現在だけ存在するように調整するのは面倒です システムがアイドル状態のとき

実際にそのような状況でプログラムを開始することは、難しいことではありません。プログラムが完全にシャットダウンされるように手配し、それをいつ、どのように行うかを考え出す必要があります。

そのプロセス自身の CPU 使用率と、実行中の可能性のある他のプログラムの CPU 使用率を区別できる必要があります。これにより、システムが適切に「アイドル状態」であるかどうかを判断できます。

たくさん プロセスをスケジュールするだけで簡単に システムがアイドル状態のとき。 「nice」コマンドを使用して [email protected] クライアントを起動するだけです。

ただし、RAM 不足の問題は解決しません。スワップ スペースが有効になっている場合、システムは優先度の低いプロセスをスワップ アウトして実際のリソースを消費しないようにする必要がありますが、example@unixlinux を実行するたびにディスク I/O に大きな負荷がかかることに注意してください。オンライン クライアントは RAM のスワップ インとスワップ アウトを行います。

追記現在、RAM は非常に安価です...

p.p.s。この記事を見る


nice 経由でアイドル タスクの優先度を最低に設定する必要があります。


Linux
  1. Podmanでsudoを使用せずにLinuxでコンテナを実行する

  2. LinuxでのCronを使用したシステムタスクのスケジューリング

  3. Linuxスクリプトで端末のユーザー入力を隠す

  1. Linuxで通常のユーザーログインをブロックまたは無効にする方法

  2. Linux –非特権ユーザーのシステムビープ音を無効にする方法は?

  3. LinuxでMIDI入力をコ​​ンピューターのキーストロークに変換しますか?

  1. システムの非アクティブによるコマンドのスケジューリング?

  2. Linuxでのシステムユーザーの表示

  3. Linux ubuntu で CPAN を使用する場合、root またはデフォルト ユーザーとして sudo / を使用して実行する必要があります。