9 月 30

 連日の不具合修正… 申し訳ない。

1.0.1 からの修正点

◇WinRing0.dll (1.0.2.3)

  • InstallOpenLibSys/UninstallOpenLibSys を Win 9x から呼び出した場合 FALSE を返すように修正
  • GetRefCount 内部でドライバの呼び出しに失敗した場合の返り値を 0xFFFFFFFF (-1) から 0 に変更
    ※実用上の変化はありません。

◇OlsDriverManager (1.0.1.2)

  • ドライバのインストール/アンインストールに失敗したときのエラーメッセージを修正
    ※Success に対して何故か Failed になっていたのを Failure に変更

◇WinRing0SampleCpp.exe (1.0.1.2)

  • GetDllStatus() が OLS_DLL_UNSUPPORTED_PLATFORM を返しているにも関わらず、RunAsRestart を呼び出していた不具合を修正。

◇WinRing0SampleCs.exe (1.0.2.3)

  • ダイアログの微調整

公式サイト:OpenLibSys.org

◇ダウンロード:WinRing0 1.0.2

 昨日、WinRing0 に関して初めて海外からメールが届きました。海外にもユーザーはいるようでひと安心。あれだけ気合いを入れて英語マニュアル作ってユーザーが一人もいなければ悲しいですからね。その方から CrystalCPUID を VisualC++ 2005 でビルドしようとしたら警告とエラーが出まくりなんだけど・・・とのコメントもいただきました。えぇ。私も同感です。だから CrystalCPUID 5.1 は 1 から作り直しなんです。

9 月 30

日経WinPC 2007年11月号には、「詳解!PC最新技術2007 WinPC Labs総集編」が付属しています。毎年楽しみにしているんですよ。こんなすごい内容で雑誌の付録でいいんですかねぇ~総集編とはいえ。

パソコンが好きな方は、ぜひぜひ購入することをお勧めします。とにかく付録だけで元が取れまくりです!!

9 月 30

オーバークロッカー必携の abo さん作 SetFSB のソースコードが公開されております。しかも、解説ページまであるではありませんか!! HSP(Hot Soup Processor) で書かれているため、パッと見ただけではわかりませんが、膨大な SMBus 関連情報が公開されているのは大注目です。

また、先日デジタル署名を行った SysInfo.sys および SysInfoX64.sys を同梱しているため Windows Vista での動作もバッチリです。

9 月 29

使用ライブラリを SysInfo からリリースしたばかりの WinRing0 に切り替えました。

ライブラリを切り替えただけではありますが、ようやく全体として修正版 BSD ライセンスとなりました。これで、CrystalDMI はほぼ開発終了かな。成果の一部は OpenLibSys に取り込まれる予定です。

9 月 29

しばらくは 1.0 のままで行きたかったのですが、早速不具合に気が付きましたので修正を行いました。

1.0 からの修正点

  • 既にドライバがアンインストールされている状態で UninstallOpenLibSys を呼び出すと FALSE が返る不具合を修正。(TRUE を返す仕様となっております。)
  • C# 版サンプルコードのダイアログ回りを微調整(フォントの変更、ダイアログサイズを変更できないようにするなど)

不具合は気がついた時に直していかないとそのままになってしまうこともあるので早めに対応と。

公式サイト:OpenLibSys.org

◇ダウンロード:WinRing0 1.0.1

9 月 29

リリース直後にデジタル署名が届き、多少ごたごたしてしまいましたが、当初の予定より若干早く WinRing0 をリリースすることができました。このエントリでは、WinRing0 の開発秘話的な話題を適当にだらだらと綴りたいと思います。

WinRing0 について

  • 正式名称:WinRing0
  • 内部名称:OpenLibSys Core SDK
  • 開発コードネーム:PureCrystal
  • 裏コードネーム:KONNYAKU, NARUKANA

今年3月にリリースした CrystalDiskMark に続いて半年振りの新作です。今回は、開発者向けのライブラリなので一般ユーザ的には何の役にも立ちませんが、そのうち WinRing0/OpenLibSys の成果を利用したソフトウェアが登場すると思います。確実にオープンソースの輪は広がっているのでご期待ください。

WinRing0 の開発は数々の困難を伴いましたが、一つ一つ解決し最終的には非常に満足できる出来に仕上げることができました。ソースコードも SysInfo の対応部分と比較すると非常に良くなったと思います。

色々書きたいことがあるような気もするのですが、WinRing0 は中間地点に過ぎません。これから多少充電期間を設けた後に、本命の OpenLibSys と CrystalCPUID 5.1 の開発に取り掛かりたいと思います。そのうち、怒涛の更新モードに入ると思います。適当にご期待ください。

今後ともご声援よろしくお願いいたします。

9 月 26

 【2008/7/21 追記】

個人ではデジタル署名を取得できなくなってしまったようです… 個人プログラマ終了のお知らせということですね。以下の記述はそのまま残しておきますが、現時点では以下の方法ではデジタル署名を取得することはできません。

◆はじめに 

【2028】デジタル署名が要るみたい」から始まったデジタル署名取得のための調査は難航し、1年もの月日が流れたそんなある日運命の出会が・・・「デジタル署名が取れる!?

本当に長い道のりでした。デジタル署名を取得するためだけに、仕事を辞めて起業するということもできず、毎日のように(専業主婦の)妻に「社長になんない?」と有限会社の起業をお勧めしておりました。当然妻はあきれ顔(笑)そんな毎日ともようやくお別れです。デジタル署名の取得を妻は本当に喜んでくれました(笑)「もう社長になれって言われなくて済む」とのこと。

◆デジタル署名の取得方法

早速ですが、デバイスドライバを Vista x64 にインストールするため必須となる「コードサイニング証明書」を個人に発行してくれる会社は日本にはありません。

そこで、個人にも「コードサイニング証明書」を発行してくれる GlobalSign (英語)から取得した方法を紹介させていただきます。

必要なもの

  • 免許証などの身分証明書 
  • クレジットカード($229/YEAR)
  • 匿名の活動は出来なくなるので、それなりの「覚悟」

具体的な流れ

  1. ObjectSign™ Code Signing Certificates から ObjectSign の購入申請を行います。
  2. 申請後、メールが届くので、指示に従い ID card として「免許証」の両面コピーをスキャンし、画像ファイルとして返信メールに添付します。
    ※免許証以外にもパスポートなどでもオッケーみたいです。
  3. しばらく待ちます。サイトには5営業日と書いてありますが、私は約1ヶ月もかかりました。(催促メールも2回送ってます)
  4. コードサイニング証明書がメールで届きます。あとは、メールの指示に従い、証明書をインストールします。

◆デバイスドライバへの署名方法

  1. (デバイスドライバ開発する人はインストール済みとは思いますが)WDK をインストールします。
    ※古い DDK では、クロス証明書を使用できないそうです。
  2. Windows Vista のカーネル モードのコード署名用 Microsoft クロス証明書 から GlobalSign Root CA 用クロス証明書をダウンロードします。
  3. Signing a Catalog File With an SPC を参考にデバイスドライバに署名を行います。
    signTool sign /v /ac MSCV-GlobalSign.cer /s my /n “XXXX YYYY” /t http://timestamp.globalsign.com/scripts/timstamp.dll ZZZZ.sys
    って感じになるかと思います。”XXXX YYYY” は CN 名つまり本名、ZZZZ はドライバファイル名です。
  4. Vista x64 で動作確認
  5. 感動の瞬間

※signtool signwizard を使うと GUI で署名ができるのですが、クロス証明書に対応していないため、この方法で署名した場合 Vista x64 へデバイスドライバをインストールすることはできません。ファイルのプロパティからデジタル署名を確認すると正しく署名できているように見えるためご注意を。

米 GlobalSign 社に感謝しつつ、Vista x64 のデバイスドライバへのデジタル署名必須化に絶望した全ての個人プログラマにこのエントリを贈ります。

★コメント&直リンク大歓迎です。

9 月 26

総合ベンチマークソフト「CrystalMark 2004R2」がWindows Vista x64に対応 (窓の杜)
※初出時に不正確な情報が含まれているため訂正依頼を行っております。(訂正済)

窓の杜で紹介していただきました。この記事がきっかけで個人でも覚悟さえあればコードサイニング証明書が取得できるということを多くの人に知っていただきたいですね。英語だし229ドルもかかるし・・・とハードルは決して低くありませんが、有限会社を作ることを考えれば簡単そのものですね。

9 月 26
  • デジタル署名をデバイスドライバに付与しました。

⇒ Vista x64 でも特に何もせず CrystalMark, CrystalCPUID, CrystalDMI を実行できるようになりました。

1 年以上追い求めていたデジタル署名がようやく手に入ったため、バージョンナンバーはジャンプアップです。

9 月 25

WinRing0 1.0 をついにリリース致しました。デバイスドライバに念願のデジタル署名を付与したため、Vista x64 でも特に設定変更を行うことなく動作いたします。

主な修正点

  • デバイスドライバにデジタル署名を追加!!(Vista x64 でもそのまま動作いたします。) 
  • サンプルコード微調整
    PCI コンフィギュレーション空間のダンプ機能追加(C++/C#)
  • 付属マニュアルを chm 形式に変更 
  • マニュアル更新

10月いっぱいぐらいは必要に応じて微調整を行い、その後 OpenLibSys の開発に取り掛かりたいと考えております。

公式サイト:OpenLibSys.org

◇ダウンロード:WinRing0 1.0