5月 24

※ダウンロードは、OpenLibSys.org  からお願いします。

【主な修正点】

  • Visual Studio 2008/2010 への対応強化
    2005/2008/2010 用のソリューションファイルを別々に用意しました。
  • CPUID 命令発行時の ECX レジスタを常に 0 となるよう修正
  • OlsApi.h の不備を修正 (HltPx)
  • 256×256 アイコンの適用

【ひとりごと】

  • サンプルコードも微妙に更新しています。
5月 22

index として EAX しか設定できないという問題があります。

Visual C++ が提供している __cpuid() 自体の問題ではあるのですが・・・。CPUID 命令実行時の ECX レジスタの値は本質的に不定となります。

32bit だけならインラインアセンブラを使って

__asm {mov ecx, XXX}
__cpuid()

で ECX レジスタの値を設定可能ですが、x64 ではインラインアセンブラが使えないためこのような簡単な方法は存在しません。CrystalCPUID4 が使用している SysInfo.dll では、師匠であるぬじぬじ氏に制作していただいた CPUID 命令発行用アセンブラから生成したオブジェクトコードをリンクしています。

ECX 入力に対応するとなると API 変更が必要になるのでまたしてもマイナーバージョンが変更となります。

ホント、新機能の(ほとんど無い)ライブラリのバージョンアップって迷惑ですよねぇ~開発者からみると。でもやるっきゃない。WinRing0 のユーザーはまだそんなに多くないのでやるなら早い方が良いですね。

最初っからわかってはいたことなのですが・・・。忘れてたけどw

5月 09

OpenLibSys.org をほんのり更新しました。

  • WinRing0 に関する記事のリンクをトップページに追加
  • オープンソースでの開発を推奨するメッセージをさりげなく?追加
  • マイクロソフトさんからのインタビュー記事へのリンクを追加

などなど、オープンソース開発者(仲間)を増やすべくがんばります。

OpenLibSys.org はこれからが本番ですよ。(新ネタはないけどw)

5月 04

systemmonitor

 Moo0 さんから WinRing0 を使用した  Moo0 システムモニター がリリースされています。サイドバーの代わりに常駐させておくのにピッタリなサイズですし、見た目も綺麗でカスタマイズ可能です。

CPU 使用率やプロセス数など様々な情報が表示できますが、一般的な情報だけでなく CPU 温度の取得にも対応しています。

3月 07

※ダウンロードは、OpenLibSys.org  からお願いします。

【主な修正点】

  • スレッドアフィニティマスクを設定した上で特定の x86 命令を実行する API を ****Ex から ****Tx に変更
    T は Thread の T です。プロセスアフィニティマスクの設定によっては失敗するので、エラーチェックを忘れずに!!
  • プロセスアフィニティマスクを設定した上で特定の x86 命令を実行する ****Px 系 API を新設
    P は Process の P です。
  • ReadDmiMemory を廃止
  • マニュアルを修正
  • サンプルコードをアップデート 

【ひとりごと】

  • WinRing0 の使い方を説明する記事もそろそろ用意したいところです。(当然日本語のみですが)
  • SourceForge.net:WinRing0 も久しぶりに更新しました。ファイルを更新しただけですが。
3月 05

【変更点】

  • スレッドアフィニティマスクを設定した上で特定の x86 命令を実行する API を ****Ex から ****Tx に変更
    API 名を変更ってどんだけ計画性がないんだ……ちなみに、T は Thread の T です。プロセスアフィニティマスクの設定によっては失敗するので、エラーチェックを忘れずに!!
  • プロセスアフィニティマスクを設定した上で特定の x86 命令を実行する ****Px 系 API を新設
    P は Process の P です。わかりやすいでしょ?ちなみに、****Tx よりも ****Px の方がちょっぴり重いです。
  • ReadDmiMemory を廃止しました。
    デジタル署名がない以上やむを得ないでしょう。
  • マニュアルの誤字を修正しました。

【先行ダウンロード】

  • WinRing0 1.3.0 ?
    WinRing0 ユーザーはとても少ないと思うので短期間のテストにほとんど意味はないと思いますが一応ちょっとだけテスト期間を設けます。もしも、バグ等見つかればバージョンを変えずに修正予定です。

【ちなみに】

CrystalCPUID 5 -Estel- で使用する OpenLibSys は WinRing0 1.3 をベースに多くの機能を追加実装することになります。なので、WinRing0 1.3 の品質はとても重要なのです!!

3月 01

【進捗状況】

  • WinRing0 1.3.0 : 100%
  • WinRing0 C++ Sample : 100%
  • WinRing0 C# Sample : 100%
  • OlsMsrEditor : 100%
  • マニュアル : 50% (日本語準備完了?)
  • Web サイト : 0%

というわけで、マニュアルと公開ページの準備ができていないため、リリースはもう少し先の予定です。

2月 16

※ダウンロードは、OpenLibSys.org  からお願いします。

【主な修正点】

  • ReadDmiMemory が一部環境で動作しない (DMI 情報が想定範囲外の範囲に格納されている機種があるため) ことが判明したため、廃止しました。
    ※デジタル署名さえできれば簡単に直せる話だったのですが……カーネルモードドライバの更新ができないため、廃止となりました。
  • 上記変更に伴うサンプルアプリの更新
  • マニュアル更新

なお、ReadDmiMemory の廃止はマニュアルとサンプルの変更のみとなっております。DLL 自体は一切更新しておりませんので、既存ユーザーの方は特にアップデートの必要はありません。

【ひとりごと】

  • ずいぶん前から指摘を受けていた点をようやく修正できました?う~ん、修正というのかこれは……
  • WinRing0 を使用したアプリケーションは国内外でそれなりに増えてきたようですが……『修正 BSD ライセンス』ではオープンソースは増えない??? ということに気が付いてきました。開発者の自由を守るために修正 BSD ライセンスを選択したわけですが、本当の自由はここにはないのかも……
  • SourceForge.net も更新せねば……
2月 03

CPUの各コアごとの使用率と温度を表示するVistaガジェット「IntelCore2」

サイドバーガジェットから WinRing0 経由で CPU の温度やクロックなどを取得するというソフトです。Orbmu2k 氏はガジェット関連でかなりすごいソフトを多数開発されています。

WinRing0 が間接的に多くの方の役立つのはうれしいですね♪ にしても、私のセンスではこんなかっこよいアプリは作れないなぁ。

1月 14

CrystalCPUID などで使用している SysInfo や OpenLibSys.org の WinRing0  はデジタル署名を行っており、Windows 7 x64 Edition でも動作する模様です。(Beta1 で確認)

詳細は追々確認しますが、Windows 7 時代でも WinRing0 を利用したハードウェアチューニングツールが利用できそうです。