タグ

メモリとドライバに関するiwwのブックマーク (2)

  • UIO: User-space I/O その1 - reservoirのブログ

    UIO: ユーザー空間でデバイスドライバ作成が可能に UIOがLinux Kernel 2.6.23-rc1でマージされました。UIOはユーザー空間でドライバを作成するための仕組みです。Hans-Jurgen Kochの提案したパッチで、Greg K-H経由でマージされています。 UIOは、これらのハードルがあるカーネル空間でのドライバ開発部分をテンプレート化することで簡便にしてしまいます。一部の定義をカーネル空間で用意する必要がありますが、大半の部分をユーザー空間だけで実装できるようです。メモリにデバイスのレジスタなどさえマップできればよい、あるいは割り込みの通知さえ行えればよいのであれば利用できます。 ユーザー空間でUIOを利用する側からは、/dev/uio0をopenしてmmapすると、デバイスのメモリ空間が見えます。また/dev/uio0からreadすると、割り込みが起きるまでブロ

    UIO: User-space I/O その1 - reservoirのブログ
  • デバイスドライバを書かずにIOを読み書きする (UserLandIO) - CAT Wiki

    デバイスドライバを書かずにIOを読み書きする † LinuxではI/Oポートの読み書きにはデバイスドライバを書く必要があります。しかしデバック時や簡易的な治具を作るなど、デバイスドライバの作成を省略したいこともあると思います。 このページでは簡易的なI/Oルーチンとして、デバイスドライバを書かずにI/Oポートを読み書きする方法について解説します。ただしこの手法は簡易的なものであり、格的な開発にはあまりお勧めできません。この手法でアプリケーションを開発、デバックし最終的にはデバイスドライバ化することをお勧めします(理由はページの最後に記述します)。 ただ、今までドライバプログラミングが難しそうだからと、せっかくのLinuxボードでもI/Oプログラミングできずに放置されていた方にとっては、はじめの第一歩として学習、研究に大変おもしろい課題と思いますからこれを機にI/O操作の面白さをしってい

  • 1