こんにちは〜 私は組み込み開発に興味があります。ご存知のように、C は組み込み開発で最も人気のあるプログラミング言語です。しかし、私は Python を使用することを好みます。Python は、組み込み開発や自動制御に関するタスクを実行するのに適していますか? そして、これについて推薦する価値のある本はありますか? ありがとう!
2 に答える
C (および C++) が組み込みシステムで普及している理由は、C (および C++) が最小のランタイム環境要件を持つシステムレベルの言語であり、スタンドアロン (ベアメタル)、単純な RTOS カーネル、または完全な OS 環境内で実行できるためです。 . 両方とも、ほとんどの 8、16、32、および 64 ビット アーキテクチャで利用可能であり、ほぼどこにでもあります。たとえば、C または C++ でブートストラップと OS コードを記述できますが、Python を実行するには、両方が既に配置されている必要があります。
一方、Python はインタープリター言語であり (コンパイルすることは可能ですが、クロスコンパイル ツールまたはそのための自己ホスト型開発をサポートできる組み込みターゲットも必要です)、大量のシステム レベル コード (通常はおよび OS) と同様に、インタープリター自体がそれをサポートする必要があります。これらすべてにより、たとえば、C や C++ でさえ提供できる非常に小規模なシステムへの展開が妨げられます。
さらに、Python は、本質的に実行が遅く、メモリ管理に関して非決定論的な動作をするため、おそらくハード リアルタイム システムには適していません。
組み込みシステムで Linux が実行されている場合、Python を使用することはもちろん可能ですが、Python が適しているアプリケーションの数は限られている可能性があります。その理由は、Python を実行できるようにするためでした。
通常、OOP は組み込み開発には適していません。これは、組み込みハードウェアがメモリに制限されており、OOP がメモリ使用量で予測できないためです。それは可能ですが、あらゆる種類の信頼性を持つメソッドを静的オブジェクトに強制する必要があります。