ラベル Linux の投稿を表示しています。 すべての投稿を表示
ラベル Linux の投稿を表示しています。 すべての投稿を表示

2019/07/02

デバイスドライバを書いてみよう05 Linuxドライバとデバイスを連携しよう

前回でアプリケーションとドライバのやり取りは大方説明した。
今回はデバイスとドライバの通信部分も作って、最終的にアプリケーションからデバイスを操作したい。

と言っても、実際にサンプルを提示するのがとても難しい・・・
一般的なデバイスで、仕様も公開されてて、反応動作がわかりやすくて・・・みたいなものを探してたんだが、そんなものはなかった。
GPIOが付いているIoT基盤などだったら例示しやすいが・・・
何度か描き進めようかと思ったが断念して、を繰り返して苦痛なので、今回はサンプルというより大体こんな感じでやるんだよ、といった形で進めたい。

2018/10/17

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

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

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

が必要だろう。

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

2018/10/16

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

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

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

2017/11/19

サウンド系API事情04 Linux系API

前回はMacのサウンドAPIについて説明したが、今回はLinuxのサウンドAPIに関して説明する。
Linuxはディストリビューションが多数ありそれぞれにモジュール構成の方針があるため、APIが多数ある。しかも、誤解を恐れずにいうがソフトベンダーがデスクトップ版をあまり重要視していないため、それぞれのディストリビューションで規格を統一しようという考え方があまりないようで、採用しているAPIもまちまちだったりする。
こういう事情もあり、複数のLinuxディストリビューションに対応したマルチメディアソフトウェアを作るのは、結構ないばらの道になることだろう。

2017/02/24

サウンド系API事情01 前知識

近年では、様々なプラットフォームでアプリケーションが作成される。
これがプラットフォームごとにそれぞれ異なるAPIで実装されているのだから、マルチプラットフォームのアプリ開発環境が隆盛するのも当然といえる。
ただ、マルチで開発していると何を使用しているかを意識することがなく、それぞれに抱える問題などが正確に把握できない、という問題もまた開発者にはあることだろう。
この記事では、いくつかのプラットフォームを例にとって、サウンド系APIについて説明したい。