英語フランス語スペイン語

Ad


OnWorksファビコン

cset-shield - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーター上の OnWorks 無料ホスティング プロバイダーで cset-shield を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド cset-shield です。

プログラム:

NAME


cset-shield - CPU シールドを実装する cpuset スーパーコマンド

SYNOPSIS


cset [csetオプション] シールド [シールドオプション] [引数]
cset シールド -- ヘルプ
cset シールド
cset シールド --CPU 1-7
cset シールド --cpu 1-7 --kthread=on
cset シールド --exec /opt/software/myapp/doit --my_opt1 --my_opt2
cset Shield --user appuser --exec run_benchmark.sh
cset シールド --シールド --pid 1024,2048,5000-1000
cset シールド --シールド解除 --pid 6000-8500
cset シールド --kthread=off
cset シールド --kthread=on
cset シールド -- シールドバッシュ

OPTIONS


-h、-help
このコマンドのオプションのリストを出力します

-c CPUSPEC、--cpu=CPUSPEC
シールド CPU セットを変更または初期化します

-r、--リセット
シールドを破壊します

-e、--exec
シールド内の引数を実行します

--user = USER
この USER を --exec (ID または名前) に使用します

--group=グループ
このグループを --exec (ID または名前) に使用します

-s、--シールド
プロセスまたはスレッドの -p/--pid で指定されたシールド PIDSPEC

-u、--シールドを解除
-p/--pid で指定されたプロセスまたはスレッドの PIDSPEC をシールドから削除します。
タスクはシールドされていない CPU セットで実行され続ける

-スレッド
指定した場合、PIDSPEC 内で複数のスレッドを持つプロセスが見つかった場合、
すべてのスレッドが自動的に PIDSPEC に追加されます (シールドまたはシールド解除に使用します)
すべての関連スレッド)

-k オン|オフ、--kthread=on|off
バインドされていない割り込みスレッドからもシールドします

-f、-force
強制操作なので注意して使用してください

-v、-verbose
追加的な、より詳細な出力を出力します。

--sysset=SYSSET
オプションでシステムの CPU セット名を指定します

--userset=ユーザーセット
オプションでユーザーの CPU セット名を指定します

DESCRIPTION


これは、基本的な CPU シールドを作成するスーパーコマンドです。 通常の cset コマンドでは次のことができます。
もちろん、この基本的なシールドを作成するために使用することもできますが、シールド コマンドはそのような多くのシールドを組み合わせたものです。
一般的なタイプの CPU シールド設定を作成および管理するためのコマンド。

シールドの概念には、少なくとも XNUMX つの CPU セット (例: root、user、および) が含まれます。
システム。 ルート cpuset は常に cpuset のすべての実装に存在し、すべての cpuset が含まれます。
マシン上で利用可能な CPU の数。 システム cpuset は、通常のシステム タスクにちなんでそのように名付けられました。
その上で実行するように作られています。 ユーザー cpuset は「シールドされた」cpuset であるため、そのように名付けられています。
関心のあるタスクを実行します。

通常、CPU XNUMX はシステム セット内にあり、残りの CPU はユーザー セット内にあります。
設定。 CPUセットの作成後、ルートCPUセットで実行されているすべてのプロセスは次の場所に移動されます。
システムの CPU セット。 したがって、これらのプロセスから生成された新しいプロセスまたはスレッドは、
システムの cpuset も実行します。

オプションの --kthread=on オプションがシールド コマンドに指定されている場合、すべてのカーネル
スレッド (CPU ごとにバインドされた割り込みカーネル スレッドを除く) も、次の場所に移動されます。
システムセット。

--exec サブコマンドを使用して、シールドされたユーザー CPUset でプロセスを実行するか、移動します。
--pid を指定した --shield サブコマンドを使用して、シールドされた CPUset にプロセスまたはスレッドを送信します。
オプションを選択します。

Note
プロセスまたはスレッドが最初にどの CPU セットで実行されているかを指定する必要はありません
--shield サブコマンドを使用する場合。
シールドを作成するには、--cpu オプションを指定してシールド コマンドを実行します。
シールドの下にある CPU を割り当てる CPUSPEC 引数を指定します (これは、割り当てられたことを意味します)
ユーザー CPUset に割り当てられると、他のすべての CPU はシステム セットに割り当てられます)。

例:

# cset シールド --cpu=1-3

4 ウェイ マシンの場合、このコマンドは最初のプロセッサ CPU0 をシステム専用にします。
セット (シールドなし) とユーザー セットの最後の 1 つのプロセッサ CPU2、CPU3、CPUXNUMX
(シールド付き)。

CPUSPEC は、CPU のカンマ区切りリストとその範囲指定を受け入れます。
たとえば、 --cpu=1,3,5-7 は、CPU1、CPU3、CPU5、CPU6、および CPU7 をユーザー (または
シールドされた)CPUセットとその逆のシステム(またはシールドされていない)CPUセット。

シールドされていないセットとシールドされたセットの「システム」と「ユーザー」という名前が気に入らない場合
それぞれ、またはそれらの名前がす​​でに使用されている場合は、 --sysset および --userset を使用します。
オプション。

例:

# cset シールド --sysset=無料 --userset=ケージ --cpu = 2,3 --kthread=on

上記のコマンドは、シールドされていないシステムの CPUset に「free」という名前を使用します。
シールドされたユーザー CPU セット用の「ケージ」。これらの CPU セットを初期化し、CPU0 と CPU1 を専用にします。
を「フリー」セットに割り当て、(4 ウェイ マシンの場合) CPU2 と CPU3 を「ケージ」セット専用にします。
さらに、このコマンドは、カーネル スレッドを含むすべてのプロセスとスレッドを、
ルート cpuset を「フリー」cpuset に変更します。

Note
--syset/--userset オプションを使用する場合は、それらのオプションを引き続き使用する必要があります。
シールド スーパーコマンドを呼び出すたびに。
初期化後、次のコマンドを使用して、シールドされた CPUセット上で対象のプロセスを実行できます。
--exec サブコマンド、またはすでに実行されているプロセスまたはスレッドをシールドされた CPUセットに移動します
--shield サブコマンドと --pid オプションを使用します。

実行したコマンドにオプションがある場合は、従来の「--」マーカーを使用してください。
cset のオプションをコマンドのオプションから分離してください。

例:

# cset シールド --exec - ls -l

このコマンドはシールド内で「ls -l」を実行します。

--pid (または -p) オプションで使用される PIDSPEC 引数は、PID のカンマ区切りリストです。
またはTID。 リストには、次の要素を含む PID または TID の括弧を含めることもできます。
エンドポイント

例:

1,2,5 工程1、2、5を意味します
1,2,600-700 工程1、2、600から700を意味します

# cset シールド - シールド --pid=50-65

上記のコマンドは、50 ~ 65 の範囲の PID または TID を持つすべてのプロセスとスレッドを移動します。
システムの CPU セットからシールドされたユーザーの CPU セットまでを含みます。 彼らが走り込んでいるなら
ルート CPUset を実際にシールドに移動するには、--force オプションを使用する必要があります。

Note
PID または TID の範囲には、すべての位置を入力する必要はありません。 その他では
つまり、上記の例では、範囲内にプロセスが 57 つだけ (たとえば PID XNUMX) ある場合、
50 ~ 65 の場合、そのプロセスのみが移動されます。
--unshield (または -u) サブコマンドは、指定されたプロセスまたはスレッドを
シールドされた cpuset を選択し、シールドされていない (またはシステム) cpuset に移動します。 このコマンドも
PIDSPEC 引数を指定する -p/--pid オプションと組み合わせて使用​​されます。これは、
--shield サブコマンドの場合。

--shield と --unshield コマンドの両方でも、最終的にタスクの数を出力します。
--pid で PIDSPEC を指定しない場合、シールド内およびシールド外で実行されます。 に
さらに --verbose も指定すると、すべてのタスクのリストが表示されます。
シールド内またはシールド外で実行されます。

サブコマンドを使用しない。つまり、 「cset Shield」のみ、シールドとシールドの両方のステータスを出力します。
非シールド。 --verbose を使用すると、タスクがリストされます。

--cpu サブコマンドを再度発行することで、シールドされた CPU セットに含まれる CPU を調整できます。
シールドが初期化された後はいつでも。

たとえば、元のシールドにシステム セットに CPU0 と CPU1 が含まれ、CPU2 と CPUXNUMX が含まれていた場合、
ユーザー セットに CPU3 を追加し、次のコマンドを発行するとします。

# cset シールド --cpu = 1,2,3

次に、そのコマンドは CPU1 をシールドされた「ユーザー」CPUセットに移動します。 任意のプロセスまたはスレッド
シールドされていない「システム」CPUセットに属する CPU1 で実行されていたものは、に移行されます。
システムによる CPU0。

--reset サブコマンドは本質的にシールドを破壊します。 たとえば、
システムに CPU4、ユーザーに CPU 0 ~ 1 があり、プロセスが実行されている 3 ウェイ マシン上のシールド
ユーザーの cpuset (つまり、シールド内) 上で --reset サブコマンドが発行された場合、すべての
システムとユーザーの両方の cpuset で実行されているプロセスは、ルート cpuset に移行されます。
(すべての CPU にアクセスでき、決して消えることはありません)、その後、システムとユーザーの両方が
CPUセットは破壊されてしまいます。

Note
CPU セットの一般的な使用法と、説明されているシールドの概念を組み合わせることもできますが、
ここでは、通常はそうしたくないでしょう。 より複雑なシールドまたは使用シナリオの場合は、
通常は、通常の cpuset コマンド (cset set および proc) を直接使用します。

onworks.net サービスを使用してオンラインで cset-shield を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad