■カーネルパラメータの設定(Solaris10)
概要
/etc/system ファイルに記述し、カーネルパラメータを調整する。
このファイルに指定された値は、ブート時に読み込まれ適用される。
⇒カーネルパラメータの変更は、システムがリブートされるまでOSには適用されない。
Solaris 9までは全て/etc/systemで管理していたが、
Solaris 10からは/etc/project の資源制御パラメータによって管理できるようになった。
資源制御方法
Solaris 10の資源制御はプロジェクト、タスクという管理下で実行
OS上で実行されるプロセスは、全て「プロジェクト」・「タスク」という識別子の下で管理。
起動時のデーモンやユーザのプロセスも必ずある「プロジェクト」に属し、実行されるプロセスは「タスク」でグループ化。
管理者はこれらのプロジェクト、タスク、プロセスの各々の階層で資源制御を実施することが可能。
IPC(Inter Process Communication)
IPCは「プロセス間通信」の意味であり、プロセスが仮想アドレス空間を介して、他のプロセスと情報の共有や、情報の受け渡しを行う仕組。
IPCはプロセス間通信を行うための仕組みとして、Solarisでは共有メモリ(shared memory)、セマフォ(semaphore)、メッセージキュー(message queue)の3種類の機能がある。
/etc/systemに記述した場合
OS起動時にカーネルパラメータに設定され、OS上で実行されるプロセスは全て同じ設定値になる。
/etc/projectに記述した場合
プロジェクト毎にパラメータ値が設定され、プロセスの設定値はプロジェクト毎に異なる。
/etc/systemと/etc/projectが混在した場合
パラメータが設定されたプロジェクトから発生するプロセスは、カーネルパラメータの設定値に関わらずプロジェクトの設定値が優先されて設定される。
パラメータが設定されていないプロジェクトから発生するプロセスは、カーネルパラメータの設定値が有効になる。
但し、Solarisデフォルト値より小さい場合は、Solarisデフォルト値が設定される。
IPCパラメータの設定に必要となるコマンド
| コマンド名 |
説明 |
| projects(1) |
ユーザーのプロジェクトメンバーシップを表示する。 |
| newtask(1) |
ユーザーのデフォルトのシェルまたは指定されたコマンドを実行し、指定されたプロジェクトが所有する新しいタスクに実行コマンドを配置する。また、newtask は、実行中のプロセスに結合するタスクとプロジェクトを変更するためにも使用できる。 |
| projadd(1M) |
/etc/project ファイルに新しいプロジェクトエントリを追加する。projadd は、ローカルシステム上にだけプロジェクトエントリを作成する。projadd は、ネットワークネームサービスから提供される情報は変更できない。 |
| projmod(1M) |
ローカルシステム上のプロジェクトの情報を変更する。projmod は、ネットワークネームサービスから提供される情報は変更できない。 |
| projdel(1M) |
ローカルシステムからプロジェクトを削除する。projdel は、ネットワークネームサービスから提供される情報は変更できない。 |
| rctladm(1M) |
システム資源制御のグローバル状態を修正および表示する。 |
| prctl(1) |
動作中であるプロセス、タスク、プロジェクトの資源制御を取得及び設定する。 |
共有メモリに関するカーネルパラメータ
shmsys:shminfo_shmmax
セマフォに関するカーネルパラメータ
seminfo_semmap セマフォマップ内のエントリ数
seminfo_semmni セマフォ識別子の数
seminfo_semmns システム内のセマフォ数
seminfo_semmnu 取り消し機能を使うプロセスの数
seminfo_semmsl 1 つのID に対する最大セマフォ数
seminfo_semopm 1 つのセマフォコールに対する最大オペレーション数
seminfo_semume 1 つのプロセスに対する取り消し構造体の最大数
seminfo_semvmx セマフォ最大値
OS コマンド
prstat の見方
USR
The percentage of time the process has spent in user mode.
SYS
The percentage of time the process has spent in system mode.
TRP
The percentage of time the process has spent in processing system traps.
TFL
The percentage of time the process has spent processing text page faults.
DFL
The percentage of time the process has spent processing data page faults.
LCK
The percentage of time the process has spent waiting for user locks.
SLP
The percentage of time the process has spent sleeping.
LAT
The percentage of time the process has spent waiting for CPU.
VCX
The number of voluntary context switches.
ICX
The number of involuntary context switches.
SCL
The number of system calls.
SIG
The number of signals received.
最終更新:2012年04月19日 16:41