我正在使用32位Ubuntu 12.04。 RAM是7.7 GB。當我運行某個進程(用C++編寫)並達到內存使用量的50%時,此進程會拋出「std :: bad_alloc」。 奇怪的是,堆大小是無限的(命令ulimit -v返回「無限制」)。 那麼可能是原因?std :: bad_alloc ulimit
2
A
回答
5
在大多數32位平臺上,進程無法處理超過4GB(2^32字節)的虛擬內存。在32位Linux上,1GB的地址空間是爲內核預留的,因此用戶進程被限制爲3GB的可尋址內存。
3
在32位機器上,即使使用PAE,單個進程地址空間也不能大於4GB。
相關問題
- 1. QPlainTextEdit扔std :: bad_alloc
- 2. std :: bad_alloc錯誤與std :: vector
- 3. std ::排序獲取std :: bad_alloc
- 4. C++異常:std :: bad_alloc
- 5. Node.js錯誤「拋出std :: bad_alloc實例後終止what():std :: bad_alloc」
- 6. std :: bad_alloc之後std :: vector的狀態
- 7. va_arg會導致std :: bad_alloc
- 8. 使用MPI:C++的std :: bad_alloc的
- 9. std :: vector bad_alloc不使用push_back
- 10. std :: bad_alloc但最終作品
- 11. Mergemap終止拋出'std :: bad_alloc'
- 12. Java程序中的'std :: bad_alloc'
- 13. 在boost :: archive :: binary_iarchive上std :: bad_alloc
- 14. 奇怪的std :: bad_alloc的
- 15. 的std :: bad_alloc的:: bad_alloc的。」:不能訪問類中聲明私有成員‘的std :: bad_alloc的’
- 16. Stringstream到Vector <char>拋出std :: bad_alloc
- 17. 的std :: bad_alloc的分配從參考
- 18. Android模擬器錯誤:std :: bad_alloc
- 19. 爲什麼我得到std :: bad_alloc錯誤
- 20. std :: bad_alloc和GSL ODE求解器
- 21. 錯誤:std :: bad_alloc在內存位置0x0038fd50
- 22. 手動拋出std :: bad_alloc可以嗎?
- 23. 從堆棧分配C++ std :: bad_alloc?
- 24. C++奇怪的std :: bad_alloc異常
- 25. 內存位置的另一個std :: bad_alloc
- 26. C++未處理的異常:std :: bad_alloc
- 27. std :: bad_alloc在內存位置0x002b123c
- 28. OpenCV匹配器 - std :: bad_alloc異常
- 29. 爲什麼get_driver_instance()拋出std :: bad_alloc?
- 30. 爲什麼std :: bad_alloc被拋出?