GSCHED(8) |
FreeBSD System Manager's Manual |
GSCHED(8) |
名称
gsched —
ディスクスケジューラ GEOM クラスのための制御ユーティリティ
書式
gsched |
create [ -v][ -a algorithm] provider ... |
gsched |
insert [ -v][ -a algorithm] provider ... |
gsched |
configure [ -v][ -a algorithm] node ... |
gsched |
destroy [ -fv] node ... |
gsched |
reset [ -v] node ... |
gsched |
{ list | status | load | unload } |
解説
gsched ユーティリティ (
geom sched ... と呼ぶこともできます) は、プロバイダに行く要求のスケジューリングポリシを変更します。
gsched への最初の引数は、次のように実行される動作を示します:
-
create
-
指定されたスケジューリングアルゴリズムを使用して、新しいプロバイダと geom ノードを作成します。
algorithm は、プロバイダに使用されるスケジューリングアルゴリズムの名前です。利用可能なアルゴリズムは、次の通りです:
rr、クライアントの中でラウントロビンサービスで先行スケジューリングを実装しています。
as、クライアント毎のキューがない単純形の先行スケジューリングを実装しています。
操作が成功するなら、新しいプロバイダは、名前 /dev/< dev> .sched. として現れるはずです。カーネルモジュール geom_sched.ko は、それがまだロードされていないなら、ロードされます。
-
insert
-
"create"として動作しますが、挿入 (insert) は、"transparent"です、すなわち、既存のプロバイダは、既存の geom に要求を順番に転送する、新しく作成された geom に経路再選択されます。この操作によって、既に存在するプロバイダでスケジューリングサービスを開始するか、または停止することができます。
その後の "destroy"は、新しく作成された geom を削除して、プロバイダを元のオリジナルの geom にフックします。
-
configure
-
既存のスケジューリングプロバイダを設定します。それは、
create コマンドと同じオプションをサポートしています。
-
destroy
-
パラメータで指定された geom を破壊します。
-
reset
-
何もしません。
-
list |
status |
load |
unload
-
geom(8) を参照してください。
追加オプションは、次の通りです:
-
-f
-
指定されたプロバイダの削除を強制します。
-
-v
-
より冗長にします。
SYSCTL 変数
SCHED GEOM クラスの振る舞いを制御するために、次の
sysctl(8) 変数を使用することができます。デフォルト値は、各変数の横に表示されています。
-
kern.geom.sched.debug: 0
-
SCHED GEOM クラスのデバッグレベル。 0 から 2 の間の数を設定できます。 0 に設定されるなら、最小量のデバッグ情報が印刷され、2 に設定されるなら、最大量のデバッグ情報が印刷されます。
終了ステータス
終了ステータスは、成功すれば 0 で、コマンドが失敗するなら、1 です。
使用例
次の例は、ディスク
/dev/ada0 に対して、スケジューリングプロバイダを作成する方法とそれを破壊する方法を示しています。
# geom_sched モジュールをロードします:
kldload geom_sched
# geom_sched によって使用されるいくつかのスケジューラのクラスを
# ロードします:
kldload gsched_rr
# スケジューラ "rr"を使用するために、デバイス ada0 を設定します:
geom sched insert -a rr ada0
# 今、プロバイダ ada0 は、"rr"アルゴリズムを使用します;
# 新しい geom は、ada0.sched です。
# デバイスでスケジューラを削除します:
geom sched destroy -v ada0.sched.
歴史
gsched ユーティリティは、
FreeBSD 8.1 ではじめて登場しました。
作者
Fabio Checconi <fabio@FreeBSD.org>
Luigi Rizzo <luigi@FreeBSD.org>