組み込み Linux プラットフォームで実行するアプリケーション (グラフィック部分に Qt を組み合わせた C++) に取り組んでいます。アプリケーション自体の安定性、効率、およびセキュリティを向上させるために、アプリケーションを異なる「コア」に分割し、それぞれがアプリケーションの異なる部分を処理する方法を知る必要があります。
私の疑問は次のとおりです。機能をスレッドに分割するか、異なるプロセスをフォークする方が便利ですか?
アプリケーションの機能的なビューを提供しましょう: それぞれ異なるユーザー インターフェイスがあり、ユーザーは多かれ少なかれ同じことを行うことができます (データの一貫性については気にしないでください。この問題は既に解決しています)。これらの各インターフェースは、スタンドアロンとして機能する必要があります (同じシステムの異なる端末のように)。アプリケーションデータの更新やその他の適切な処理を行う同じ「コア」からすべてのメッセージを送受信する必要があります。
内部の「コア」とユーザー インターフェイスの分割を実装する最良の方法は何ですか?
確かに私はいくつかの知識を欠いていますが、これまでのところ私は2つの選択肢を思いつきました.この場合、父と子を通信させることはできますか (子は新しいプロセスであることを念頭に置いてください)?) 2 - コアと UI ごとに異なるスレッドを作成します。
この部門が必要なのは、アプリケーションが可能な限り安定しており、クラッシュした場合に UI を再起動できる必要があるためです。また、アプリケーション全体で使用可能なメモリとリソースが無限にあるわけではないことにも注意してください。
よろしくお願いします。