Windows 7 ライブラリを組み込みプラットフォームに移植中です。そうするために、私の雇用主は、私のシステムが移植された後に必要となるメモリの量 (および CPU ですが、今はメモリに集中させてください) を私に尋ねました。
私はインターネットを見ましたが、この質問に関する情報はあまりないようです。したがって、私の質問は次のとおりです。
フラッシュ メモリ内のコードのメモリ フットプリント (データ用メモリのないコードのみ) の大まかなアイデアを得るために、使用するすべての dll のサイズを合計する必要があることをインターネットで読みました。すべてのコンパイラとプラットフォームでコード フットプリントのサイズが異なるようですが、全体的なコードのサイズ (データなし) は非常に近いことがよくあります。確認しますか?
データのみ (ヒープ + スタック、コードなし) に必要なメモリを処理するために、タスク マネージャー (およびプロセス エクスプローラー) を確認しました。私が使用するデータの全体量は、「ピーク ワーキング セット」で指定されているようです。ただし、それについていくつか質問があります。
2.a. 「ワーキング セット」にはヒープ + スタック メモリが含まれますか、それともヒープのみに対応しますか?
2.b. 「ワーキング セット」にはコードのサイズも含まれていますか? (私はWindows 7を使用しているため、組み込みシステムのようにフラッシュではなくRAMにコードも保存されます)、またはデータにのみ対応していますか?
2.c. 「ピークワーキングセット」は、プログラムが開始された時点から実際にRAMにあった物理メモリの最大量を反映しているようですが、プログラムがその後に使用できるサイズを反映していません(実行時にメモリを割り当てた場合-これは悪いことです ;) - ピーク値は増加し続けます)。確認しますか?
2.d. したがって、実行時にメモリを割り当てない場合、「ピーク ワーキング セット」は、組み込みシステムが必要とする RAM の最大サイズとほぼ一致することを確認してください。システム技術の違いによる多少のサイズの違いまで...
ありがとう、
アントワーヌ。