私はLuminaryLM3s8962ARM Cortex M3開発ボードを持っており、Keil RTOSを使用してプログラムすることはできましたが、Linuxと組み込みlibcの上で開発することを強く望んでいます。私が知りたいのは、実際にLinuxカーネルとアプリケーションおよび依存関係をボードに取得するにはどうすればよいですか?SDスロットがありますが、ある種のファイルシステムイメージを作成して、ブートローダーでボードをプログラムすることはできますか?ブートローダーを自分で作成する必要がありますか?私はこれのどれから始めるべきか全く手がかりがありません。yoctoプロジェクトを調べましたが、マルチメガバイトのカーネルとファイルシステムのイメージファイルを実際に処理してボードで実行する方法がわかりません。
4 に答える
M3 への Linux の移植は、ARM の Catalin Marinas によって行われました。
これに関する情報は、 http ://www.linux-arm.org/LinuxKernel/LinuxM3 で見つけることができます 。
私はCortex-M3でグラフィカルGUIアプリケーションを書いていますが、Linuxホストを少しでも見逃さないように言わなければなりません。私のプログラムはmain()で始まり、libcのmallocがあり、SDCARDはFATSで実行され、文字通り、のようfopen()
に動作しfread()
ます。
確かにあなたは自分のことを知っている必要がありますが、Linuxが実行されたとしても、それはすべてのリソースを消費し、ほとんどまたはまったく利点を与えません。複数のアプリを並行して実行する必要がなく(スレッド)、高度なスケジューリングが必要ない場合は、から始めてint main()
使用する方がはるかに優れていlibc
ます。
Embedded Compact .NET を試しましたか? (ここから BOOO BOO!! が聞こえます、笑) Visual Studio のコーディングに慣れている場合は簡単です。
私はずっと前に Cortex M7 STM32 プロセッサで試しましたが、厳しいタイミング要件には適していませんでした。http://msdn.microsoft.com/en-us/netframework/bb267253で確認してください。
学習目的でない限り、ARM Cortex-M3 で Linux を実行しようとは思いません。MMU でより良いグラブ ボード。Cortex M3 用の OS を探しているなら、ある種の RTOS を使い続けるでしょう。