12.07.2015 Views

RedHawk Linux User's Guide version 6.3 日本語版

RedHawk Linux User's Guide version 6.3 日本語版

RedHawk Linux User's Guide version 6.3 日本語版

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

システム・クロックおよびタイマープロセス 実 行 時 間 および 制 限 7ローカル・タイマーはSCHED_OTHERおよびSCHED_RRスケジューリング・ポリシーでスケジュールされたプロセスのクォンタムを 満 了 するために 使 用 されます。これは 同 じスケジューリング・ポリシーのプロセスがラウンドロビン 方 式 でCPUを 共 有 することを 可 能 にします。もしローカル・タイマーがCPU 上 で 無 効 である 場 合 、CPU 上 のプロセスはもはやそれらのクォンタムを 満了 することはありません。これは、このCPU 上 で 実 行 中 のプロセスはブロックするまで、または高 優 先 度 プロセスが 実 行 可 能 となるまで 実 行 されることを 意 味 します。つまり、ローカル・タイマー 割 り 込 みが 無 効 であるCPU 上 では、SCHED_RRスケジューリング・ポリシーにスケジュールされたプロセスはまるでSCHED_FIFOスケジューリング・ポリシーにスケジュールされたように動 作 します。ローカル・タイマーが 有 効 のままであるCPU 上 にスケジュールされたプロセスは 影響 を 受 けないことを 注 意 してください。プロセス・スケジューリング・ポリシーに 関 する 詳 細 な情 報 については4 章 の「プロセス・スケジューリング」を 参 照 してください。setrlimit(2)およびgetrlimit(2)システムコールは、プロセスが 消 費 可 能 なCPU 時 間 に 関 する 制 限 をプロセスが 設 定 および 取 得 することを 可 能 にします。この 時 間 が 満 了 となった 時 、プロセスにSIGXCPUシグナルが 送 信 されます。CPU 時 間 の 蓄 積 はローカル・タイマー 割 り 込 みルーチンの 中で 行 われます。 従 って、もしCPU 上 のローカル・タイマーが 無 効 である 場 合 、CPU 上 のプロセスが 実 行 する 時 間 は 計 上 されません。もしこれがプロセスを 実 行 する 唯 一 のCPUである 場 合 、SIGXCPUシグナルを 受 信 することは 決 してありません。インターバル・タイマーのデクリメント 7システム・プロファイリング 7CPU 負 荷 バランシングング 7setitimer(2)およびgetitimer(2)システムコールはプロセスが 個 々に“ 仮 想 タイマー”のセットアップ、タイマーの 値 の 取 得 を 可 能 にします。 仮 想 タイマーはプロセスが 実 行 中 の 時 だけデクリメントされます。 仮 想 タイマーには、ユーザー・レベルでプロセスが 実 行 している 時 だけデクリメントするものとユーザー・レベルとカーネル・レベルのどちらでもプロセスが 実 行 している 時 にデクリメントするものの2 種 類 が 存 在 します。 仮 想 タイマーが 満 了 する 時 、シグナルがプロセスへ送 信 されます。 仮 想 タイマーのデクリメントはローカル・タイマー・ルーチンで 行 われます。 従って、ローカル・タイマーがCPU 上 で 無 効 である 時 、 使 用 時 間 が 仮 想 タイマーからデクリメントされることはありません。もしこれがプロセスを 実 行 している 唯 一 のCPUである 場 合 、その 仮 想タイマーは 決 して 満 了 となりません。ローカル・タイマーはシステム・プロファイリングを 操 作 します。プロファイラーが 記 録 するサンプルはローカル・タイマー 割 り 込 みの 発 生 により 始 動 します。もしローカル・タイマーが 任 意のCPU 上 で 無 効 である 場 合 、gprof(1)コマンドとprofil(2)システム・サービスはそのCPU 上 で 動 作するプロセスに 対 して 正 しく 機 能 しません。ローカル・タイマー 割 り 込 みルーチンは、このCPU 上 で 実 行 可 能 なプロセスの 数 がシステム 内 の他 のCPU 上 で 実 行 可 能 なプロセスよりも 極 めて 少 なくないことを 確 認 するために 周 期 的 にロード・バランサーを 呼 びます。このような 場 合 、ロード・バランサーは 全 てのCPU 間 の 負 荷 のバランスをとるために 他 のCPUからプロセスを 移 動 します。ローカル・タイマー 割 り 込 みが 無 効 になっているCPUで、 実 行 するプロセスがCPUにない 時 にロード・バランサーは 呼 ばれます。シールドCPU 上 でバックグラウンド・プロセスが 実 行 することは 通 常 望 ましいことではないため、この機 能 の 損 失 はシールドCPUにおいて 通 常 は 問 題 ではありません。7-3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!