2005年1月19日

[linux-users:104282] Re: 実アドレスのアクセス方法について(質問)

上原と申します。

もう解決されたかも知れませんが、単純な read であれば、
dd if=/dev/mem bs=1 skip=1040577 count=44 | hexdump -C

などで、特定のメモリアドレスを表示できます。(1040577 = 0x0FE0C1)


C で作りたいなら以下が参考になると思います。
http://www.mech.tohoku-gakuin.ac.jp/rde/contents/linux/drivers/nodriver.html#BabjNFIqB


"伸夫 青木" <nobuo_aoki@xxxxx> wrote:

|こんにちは、青木と申します。
|
|F000:E0C1番地(BIOSアドレス)に格納されているボードの識別情報をリードした
|いのですが、単純にポインタにアドレスをセットしてリードすると、「
|Segmentation fault」のエラーにてプログラムが異常終了してしまいます。
|
|   char *p = 0x0FE0C1;
|   char work[44];
|   memcpy(work,p,43);  //おそらくここでエラーになっていると思われます
|   work[43] = '\0';
|   printf("String=%s\n",work);
|
|linuxのアプリから直接 実アドレスをリードする事は出来ない様なのですが、
|何か方法は無いでしょうか?
|
|
|


--- 以上 ---

--
(株)アルファシステムズ 経営企画本部
技術推進部 第一システム研究課
上原 光晶
TEL: 044-738-4126(7213)
e-mail: ueharam@xxxxx

投稿者 xml-rpc : 2005年1月19日 17:58
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/9496
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。