2011-09-24 6 views

答えて

19

getrlimitを使用して、最大プロセスとスタックのサイズを問い合わせることができます。スタックフレームは固定サイズではありません。各フレームが必要とするローカルデータ(すなわち、ローカル変数)の量に依存する。

これをコマンドラインで実行するには、ulimitを使用します。

あなたが実行中のプロセスのために、これらの値を読みたい場合は、私がこれを行う任意のツールを知らないが、それは/ procファイルシステムを照会するために十分に簡単です:

cat /proc/<pid>/limits 
+0

私は、エラーが見つかりませんコマンドを取得します。このコマンドにはどのパッケージをインストールする必要がありますか? – Bruce

+0

コマンドラインツールではなく、C API呼び出しです。 –

+0

彼らはいくつかの開始サイズを持つ必要がありますか?コンパイラは(すべてのローカル変数を考慮して)スタックフレームのサイズを事前に計算してからフレームを割り当てますか? – Bruce

3

あなたはgetrlimitを使用することができますスタックサイズを確認するにはsetrlimitを変更してください。

ポストにIncrease stack size in Linux with setrlimitの例があります。

+2

ubuntuのようなgetrlimitのようなコマンドではありません – HMS

23

クイックGoogle検索では、some information on this subjectが表示されます。キロバイト単位で

> ulimit -a   # shows the current stack size 
+1

もちろん、このページはすばやくGoogle検索で表示されます。 – gerardw

13

最大スタックサイズ:

ulimit -s 
関連する問題