2018/10/17

デバイスドライバを書いてみよう04 Linuxドライバとアプリケーションを連携しよう

前回でドライバの基本形である最小のLinuxモジュールを書いたが、今後はどのような実装が必要だろうか?

  1. デバイスとドライバの通信
  2. アプリケーションとドライバのやり取り

が必要だろう。

1は難易度も高いし、実際のデバイスを用意するなど敷居が高いので、とりあえず2から説明する。
今回は、アプリケーションがカーネルのシステムコールを介してドライバとデータをやり取りするようなものを実装したい。

2018/10/16

デバイスドライバを書いてみよう03 Linuxデバイスドライバを書いてみよう

前回まででドライバの概要やデータのやり取り方法を説明した。では実際にデバイスドライバを書いてみよう。
前回に予告したようにLinux用ドライバを書いてみる。簡単なものから順に複数のドライバを書いていきたい。今回はもっとも単純なもので、ドライバのロード時とアンロード時にメッセージを出力するドライバを書く。

まぁこの内容、Raspberry Pi用に書いた以前の記事の内容に含まれているので、それの簡易版となる。すでに実践した人は飛ばしてもOK。

2018/10/14

デバイスドライバを書いてみよう02 続・デバイスドライバって何?

前回でデバイスドライバの立ち位置や仕組みをなんとなく説明したが、実際にデバイスドライバを書く場合、知りたいのは

  1. ドライバの基本的な書き方、組み込み方
  2. デバイスとデータをやり取りする方法
  3. アプリケーションとデータをやり取りする方法

ではないだろうか。

1は、その前に概念や仕組みを説明をしたいので、もう少し後に説明する。今回は2のデータのやり取りなどをもう少し突っ込んで説明したい。
また、3の概要はすでに説明したが、その詳細も2に関連するので今回でもう少し具体的に説明したい。

2018/10/13

デバイスドライバを書いてみよう01 デバイスドライバって何?

IoT的なものづくりをしていると簡単なものはGPIOなどから信号を出して制御するが、複雑になるとデバイスドライバを書いた方がいい場合がある。
規模が大きくなりがちなので、なんでもかんでもドライバを書くのはよくないのだが、必要な場合はある。

今回は、そもそもデバイスドライバって何?という疑問に対する説明をしたい。