特定のコンパイラ/ osコンボの最大スタックサイズを調べる方法が不思議です。私はUbuntu/GNUコンパイラを使用しています。私が加えているいくつかの質問は次のとおりです。Linux上でC++プログラムのメモリスタックの最大サイズを調べるにはどうすればよいですか? (gnuコンパイラ)
- 誰がデフォルトの最大スタックサイズを制御しますか。 OSやコンパイラ?
- デフォルトの最大値は合計メモリに応じて調整されますか? (つまり、2GBのメモリを搭載したマシンは、512MBしか搭載していないマシンよりもデフォルトサイズが大きくなります)。この例では、両方のマシンが同じOS /コンパイラ設定であり、システムRAMの量が異なります。
ありがとう!
もし私があなたにアップアップすることができたら私はそうするでしょう。これは大いに助けてくれた、説明してくれてありがとう。 – RyanY
upvotingについて心配しないでください。お力になれて、嬉しいです。さらに質問がある場合はお知らせください。 – dirkgently
--stack =についての答えの部分は完全に間違っています:ここでは、 'info ld'が言っていることです:このオプションは、リンカーのi386 PEターゲットポートに固有です。 UNIXシステムでは、コンパイラは通常、スタック制限を行うために* nothing *を持ちます。 –