
Ubuntu日本語フォーラム

ログインしていません。
当方はデルのPrecisionT7500にメモリを48GB迄増設して、ubuntu14.04を利用しているものです。
HDDの容量は2TBで、その内14.04は997GBを使用しています。残りはubuntuの12.04です。
malloc関数で26GB程度の配列を確保したソースをgccでコンパイルしています。
リンク迄は通るのですが、実行時に強制終了してしまいます。
64bit版ubuntuが利用可能なメモリ容量の上限とは一体どの位なのでしょうか?
それとも、ハードウェアのせいなのでしょうか?
オフライン
hitohiranohana による投稿:
リンク迄は通るのですが、実行時に強制終了してしまいます。
ulimit コマンドでスタックサイズを変更できるようです。
私の環境では、
main() {
char c[1024 * 1024 * 1024 * 5];
strcpy(c, "test");
puts(c);
}
というコードをコンパイルした後実行すると
Segmentation fault (コアダンプ)
となりますが、
ulimit -s 5242880
と実行した後だと正常に動作しました。
プログラムのスタックサイズを変更する
http://www.hiraku.ro/tdiary/?date=200812
hitohiranohana による投稿:
64bit版ubuntuが利用可能なメモリ容量の上限とは一体どの位なのでしょうか?
スタックサイズの確認も ulimit コマンドで出来るようです。
ulimit -a
と実行すると表示されます。
オフライン
hitohiranohana による投稿:
malloc関数で
すみません、ここの部分を思いっきり見落としていました。
私の書き込みは無視してください。
オフライン