カーネル/ドライバーのプログラミングチュートリアルを知っている人はいますか?


12

RPiを使用してハードウェアレベルのプログラミングを習得することに興味があります。RPiのチュートリアルをインターネットで検索しましたが、見つかったのは一般的な「カーネルのコンパイル方法」チュートリアルだけです。実際の「カーネルコード/デバイスドライバーの書き方」タイプのチュートリアルに興味があります。RPi用の特定のチュートリアルはありますか、それともハードウェアレベルのプログラミング用の* nixチュートリアルで十分ですか?



2
@Jivings:提案された重複は、私の質問のどちらの部分にも対応していません。ElinuxとCASはRPiカーネルプログラミングについて何も持っていないように見えますが、GPIOプログラミングはドライバの作成の表面をかろうじて削っています。さらに、RPiと一般的な* nixチュートリアルの推奨される複製には言及がありません。
ヤクブ

回答:


5

誰かを個人的に知っていない限り、これよりも良いリソースを見つけるとは思わない。

楽しい

PSリンクが切れた場合、この本はLinux Device Driversと呼ばれます。


これは非常に良く見えます。私はいつもO'Reillyシリーズのファンです。
ヤクブ

だから、LinuxカーネルのドライバープログラミングはRaspbianに簡単に移行できると思いますか?
ヤクブ

Raspbianは基本的に、Raspberry Piのハードウェアに固有の特別なパラメーターを使用してコンパイルされた小さなDebianディストリビューションです。そうです、それは私がチャイムに、より知識のある誰かのためのいずれかのドライバプログラミングの専門家でもラズベリーパイレッツ・待機そうはないですが、必要があります。
NickHalden

非常に時代遅れのようです(カーネル2.6以降)。最新のものはありますか?
ルーカスクヌース


2

LDDの本に加えて、free-electrons.comのトレーニングコースドキュメントもご覧ください。すべてのコース資料はオープンソースです。Linuxカーネルプログラミングを少し始めた人、または特定のトピック/分野についてより深くより広い理解を求めている人に適しています。

最初に、少なくとも最初の2つのコースを見てください。

free-electrons.comのlxrソースコード相互参照サイトを忘れないでください。さまざまなカーネルバージョンのソースコードを確認できます。

IDE、特にNetBeansまたはEclipseを好み、perlスクリプトとMakefileを実行する方法を知っているなら、github.comで私のプロジェクトNbkツールを見ることができます。このスクリプトにより、NetBeans C ++キットを使用してカーネルプロジェクトに完全にインデックスを付けることができます。これにより、ソースコードの内部構造と関係をより深く理解できるようになり、エクスペリエンスが大幅に向上します。私は通常、カーネルの最小構成に加えて、見ている特定のデバイスを作成し、カーネルコードを分析するためだけにNetBeansでビルドとインデックス作成を行います。別のプロジェクトで実際の開発を行いながら。このスクリプトは、NetBeansで直接テストされますが、Eclipseでも考え方は同じです(Eclipseに合わせてスクリプトを変更する必要があります)。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.