デバイスドライバ

組込みシステムでは各種コントローラやペリフェラルを使用してシステムを構築します。そのコントローラやペリフェラル(以降、ハードウェアと記す)を動作させるソフトウェアを組込みシステムの世界ではデバイスドライバと言っています。ここでは、そのデバイスドライバのソフトウェア設計に関して記載していきます。

デバイスドライバのソフトウェア構成は、デバイスドライバの上位層(アプリ層やフレームワーク層)向けに機能提供するインタフェース部分(APIとも言う)とハードウェア部分を制御する部分から成り立っている事が一般的です。

デバイスドライバはRTOS(リアルタイムOS)の機能を使用して実装することが多くなってます(言い換えるとOSに依存する実装に成りがち)。OSによってはデバイスドライバを作成する上でお作法が必要なOS(linux系統)が存在します。

順次、デバイスドライバのソフトウェア設計について記載していきます。