組み込み Linux での開発方法を学びたいです。どのような資料が必要ですか? 私は実際の組み込みデバイスを持っていないので、PC 用のデバイス エミュレーターを使用する予定です。デバイスにカーネルとファイルシステムをロードする方法を知りたいです。
8 に答える
使用する予定のデバイスによっては、 QUEMUを使用してエミュレートできる場合があります。
デバイスがなくても、おそらくhttp://www.linuxfordevices.comの記事を読むことから始めることができます。
The Embedded Linux Overview Quick Reference Guideが良い出発点になるかもしれません。
http://www.linuxfromscratch.org/をチェックしてみてください。
ほとんどの標準的な Linux ディストリビューションは、本格的なデスクトップを対象としています。「ゼロからの Linux」アプローチは、非常に小さなメモリ フットプリントに収まるベアボーン カーネルを作成できるため、組み込みプラットフォームに最適です。
組み込みシングル ボード コンピュータが、少なくとも 1 つの RS-232 シリアル ポートと少なくとも 1 つのイーサネット インターフェイス、およびフラッシュに格納されたブート ローダーを持つことはかなり一般的です。ブートローダを使用すると、多くの場合、シリアル ポートを使用して、オンボード フラッシュからのブート、場合によっては SD または USB フラッシュからのブート、イーサネット経由での TFTP の使用、場合によってはシリアル ポート自体からのブートなど、いくつかのブート オプションの 1 つを構成できます。
デバイスの製造元は、デバイスに OS をロードするための何らかの SDK、開発環境、または少なくともいくつかのドキュメントを提供する必要があります。
デバイスの実行可能ファイルを作成するには、ある種のクロスコンパイラとリンカーが必要です。リモート デバッガーは便利ですが、利用できない場合があります。
ワークステーションで実行されるエミュレーターまたはシミュレーターは非常に役立ちます。
デバイスとの間でデータと実行可能ファイルを移動するために必要なハードウェアが必要になります。これは、イーサネット、RS-232、wi-fi、Bluetooth、USB、光、eprom バーナー、または何か奇妙なものである可能性があります。
ターゲットにしているデバイスの正確な種類に関する詳細情報がなければ、これ以上提案することはありません。
エミュレーターではなく実際のボードで作業したい場合は、ビーグル ボードなどの一般的な開発ボードを試すことができます。カーネル ソース ツリーをダウンロードして独自のビルドを作成し、ブートローダーとカーネル イメージをボードにフラッシュします。
組み込み Linux に慣れるためのもう 1 つの良い出発点は、 www.embedded.orgです。そこに良いイントロがあります。私は組込み Linux にも慣れようとしています。この 7 部構成のイントロでは、違い、仕組み、開始方法について理解を深めることができました。
何かをすぐに始めたい場合は、QEMU と Angstrom のプリコンパイル済みパッケージを使用することをお勧めします。このチュートリアルを試すことができます: running-qt4-examples-on-embedded-linux
基本から試してから、上に移動することをお勧めします。Cross Linux をゼロから試すhttp://www.linuxfromscratch.org/clfs/view/clfs-2.0/arm/ ?