SysInfo.dll 概要 SysInfo.dll は、吉里吉里/KAGのSystemクラス上に、CPUやメモリの情報を 取得するためのプロパティと関数を追加する。 使い方: SysInfo.dllをプラグインとして読み込めるディレクトリにコピー。 first.ks の先頭あたりで、以下のように呼び出す。 [eval exp="Plugins.link="SysInfo.dll"] これで System クラスに各プロパティと関数が追加される。 追加されるもの: System.CPU_vendor:プロパティ CPUのベンダ名を文字列で返す。cpuid(0)のソレ。 例:"GenuineIntel" System.CPU_modelname:プロパティ CPUのモデル名を文字列で返す。cpuid(0x80000002,3,4)のソレ。 例:" Intel(R) Core(TM) i3-2120T CPU @ 2.60GHz" ※頭に空白があるのはそういうものだということでひとつ。 System.CPU_MHz:プロパティ CPUの動作クロックをMHz単位で返す(int)。2秒間ベンチマークするので、 呼び出すと2秒間停止することに注意。 2.6GHzなら2608などが返る(※誤差あり)。 System.CPU_number:プロパティ CPU数を返す(int)。コア・スレッドなどは区別しないため、2core4threadなら 4が返る。SMPシステム以外は全然考慮していないが、SMPじゃないシステム なんて世の中に殆どないからいいや。 System.CPU_isCapable(機能):関数 引数に機能(文字列)を指定すると、その機能が実現可能かどうかをboolで 返す。現在判別可能な機能は以下のとおり。 "MMX", "SSE" "SSE2", "SSE3", "SSE4.1", "SSE4" TJS上での使用例:   if (!System.CPU_isCapable("SSE2")) {     System.Inform('SSE2が使用できません');     System.exit();   }   Plugins.link('KaichoTrans.dll'); System.MEM_totalphys:プロパティ 実装されている物理メモリ量を返す。 ※ x86_64上の32bitエミュレーションでどうなるか(4GB超えられるか)は   試してないので不明。 System.MEM_freephys:プロパティ 空きの物理メモリ量を返す。 ※ x86_64上の32bitエミュレーションでどうなるか(4GB超えられるか)は   試してないので不明。