• 締切済み

LinuxでIRQ,I/O,dmesgの学習方法について質問します。

LinuxでIRQ,I/O,dmesgの学習方法について質問します。 IRQ・/proc/interruputs I/Oアドレス・/proc/ioports DMA・/proc/dma dmesgの出力内容の意味 lspciの出力内容の意味 lsdev などの理解がなかなかできません。 どのようにすれば理解できるようになるのでしょうか? マイコンなどを自作するところからしないと本当の理解はできないのでしょうか?

みんなの回答

  • onosuke
  • ベストアンサー率67% (310/456)
回答No.1

学習方法の視点がそもそも間違っています。 >IRQ・/proc/interruputs >I/Oアドレス・/proc/ioports >DMA・/proc/dma >lspciの出力内容の意味 >lsdev は、【デバイス設定情報】を表示しているだけなので、Linuxとはほとんど関係ありません。(Windowsの「デバイスマネージャ」画面でも同様の情報が確認でき、また、読みやすい。) となると次の疑問が浮かんでくるはず。 「この【デバイス設定情報】とはそもそも何?」 この【デバイス設定情報】は  CPUがデバイスに対してI/Oアクセス(入出力)する仕組み の中で利用されるものです。 つまり、IA32(PC/AT互換機)というハードウェアアーキテクチャに関して  CPUがデバイスに対してI/Oアクセス(入出力)する仕組み という観点で学習すればそれぞれが何の設定なのか、自ずと答えがでます。 学習する上での注意: 過去のハードウェアアーキテクチャを引きずっているため、同じことを行う仕組みが複数存在する(古い仕組みが残っている)ことに注意。 (古い仕組みは、速度1000分の1、容量100000分の1といった昔のハードウェアでは効率が良かった。) >マイコンなどを自作するところからしないと という意見は、マイコンを自作すると否応無しに  CPUがデバイスに対してI/Oアクセス(入出力)する仕組み を意識させられるためでしょう。ただし、マイコンとPCでは、ハードウェアアーキテクチャが異なるため、【ハードウェア設定情報】の種類が違うかもしれません。 >dmesgの出力内容の意味 100%意味把握するには、ソースコードを解読し、処理内容を理解する必要があります。 ぼちぼちで良ければ、親切なメッセージは、該当処理周辺の知識があれば意味把握できます。 不親切なメッセージは、ソースコードを解読しないと無理です(><

関連するQ&A