3

いくつか読んだ後、SMBIOS メモリをマップして解析できるようです。どうすればいいのかわかりません。これを任意の OS でコンパイルできるようにしたいので、マネージ コードは使用できません。

これを行う方法のコード例はありますか?

4

3 に答える 3

8

ほとんどのシステムでは、ユーザー モードでアクセス可能なメモリにマップされていないため、何らかのシステム API を呼び出す必要があります。

Windows では、 GetSystemFirmwareTableを呼び出すことができます。

于 2009-09-09T22:09:11.380 に答える
2

Linux の場合、具体的なコードについてはdmidecode ソース(GPL) を参照する必要があると思います...

dmidecode 出力を使用して解析するだけで十分な場合があります...

于 2009-09-09T22:15:06.523 に答える
1

すべての SMBIOS を読み取るための再利用可能なクラスを作成しました。

これは、適切なエラー処理と拡張が容易な非常にクリーンなコードです。このクラスから、解析されたデータを使用して表示したり、必要な処理を行ったりするクラスを派生させることができます。

コードのコメントには、実際の SMBios ドキュメントへのリンクもあります。

私のホームページからダウンロードできます: ftp://ftp.netcult.ch/mirror/elmue/SMBiosClass.zip

エルムー

于 2013-09-11T23:45:49.550 に答える