この仕様書は「CPU使用率コントローラー」Ver1.0にて実装する機能の範囲を定義する。
このバージョンで実現を目指すもの
CPU使用率コントローラーの基礎的な機能のみ実装する。
従って、オプションとしてよい機能は次のVer以降に実装を検討する。
操作中ウィンドウの操作快適性の向上
現在アクティブになっているウィンドウのプロセスが限界までCPUを使用できるように、他のプロセスのCPU使用率を抑制する。(操作中ウィンドウ快適化制御)
全てのプロセスのCPU使用率の合計が100%を超えない限り、CPU使用率制御は実施しない。
本プログラムは一定間隔でコンピュータ内で実行されているプロセスの全情報を取得し、アクティブウィンドウのプロセスの特定とCPU使用率抑制制御の実施要否を判定する。
CPU使用率抑制制御の必要が生じた場合、本仕様書で定めるCPU使用率抑制制御方式に基づき、CPU使用率抑制制御を実施する。
CPU使用率抑制制御
CPU使用率抑制制御方式は、CPU使用率を抑制するプロセスに対して、一時停止と再開を短期間に繰り返す方式(プロセス一時停止/再開短期間制御方式)とする。
本バージョンにおいて、プロセス一時停止/再開短期間制御方式に使用するパラメータは全てプログラム内で決定した値とする。
CPU使用率を抑制するプロセスは、CPU使用率が一定の閾値(CPU使用率制限値)を超えたものに対して実施する。CPU使用率制限値を超えたプロセスのCPU使用率がCPU使用率制限値未満となるように制御する。CPU使用率が一定の閾値未満の場合、抑制対象外とする。
CPU使用率制限値は可変とする。
CPU使用率制限値の決定方法は次の方法とする。
1.CPU使用率抑制が開始された時点での、アクティブではないウィンドウのプロセスのCPU使用率の最大値にある減価定数をかけたものを初期値とする。
2.CPU使用率抑制制御を行った結果、システム全体のCPU使用率が100%の場合、CPU使用率制限値を減少させる。
3.CPU使用率抑制制御を行った結果、システム全体のCPU使用率が100%未満の場合、CPU使用率制限値を増加させる。
操作方法
本プログラムを起動すると、自動的に操作中ウィンドウ快適化制御が開始される。
本プログラムを起動すると、メインウィンドウが表示される。
メインウィンドウで可能な操作、表示する情報は以下の内容である。
可能な操作
- ヘルプを表示する。(Bloggerで記載したヘルプ画面へ移動)
- バージョン情報を表示する。(本ソフトウェアの開発Blogへのリンクを示し、リンクをクリックすることでブラウザを起動し、本ソフトウェアの開発Blogへ移動する。)
- ご意見・ご感想・不具合報告。(Bloggerで記載した投稿画面へ移動)
表示する情報
- プロセス一時停止/再開短期間制御を行っているかどうかを表示
- プロセス一時停止/再開短期間制御を行っているプロセス名・id を表示
- 全体のCPU使用率
メインウィンドウ画面構成
メインウィンドウの画面構成は、統合開発環境により作成する。
留意点
- 他のソフトウェアの操作に邪魔にならないよう、可能な限り小さくする。
- 画面サイズは可変とし、画面サイズを表示することで表示する情報量を調整できる。
デバッグ支援機能
ログ出力
ソフトウェア起動時のコマンドラインに以下のパラメータを指定することでログ出力を行うように指示できる。
ログは、ソフトウェアのカレントディレクトリに保存する。
ログは追記モードで書き込む。
ソフトウェア起動時にログファイルが存在した場合、ログを初期化するためにそのログファイルは削除する。
コマンドラインオプション:
-log:normal
基本的なログ出力を行う。
-log:detail
詳細なログ出力を行う。
-log:normalの内容を完全に包括する。
ログファイル名:log.log
現在のログモードがわかるよう、メインウィンドウのタイトルにコマンドラインオプションを表示する。
障害解析支援機能
エラー発生時には、ダイアログにてユーザにエラー情報を通知する。
また、発生した障害情報をエラーログファイルに書き込む。
エラーログは、ソフトウェアのカレントディレクトリに保存する。
上書き方式で書き込む。
エラーログファイル名:err.log