尊敬的各位,我使用的是Redhat Linux,如何爲特定進程設置最大內存。例如,我必須分配最大內存使用量來單獨進行日食。可以像這樣分配。給我一些解決方案。在linux中爲進程分配內存
回答
您無法控制內存使用情況;您只能控制虛擬內存大小,而不能控制實際使用的內存量,因爲在支持虛擬內存的操作系統上,單個進程的知道程度非常複雜(可能不可能)。
並非所有使用的內存都在給定的時刻出現在進程的虛擬地址空間中,例如內核使用率和磁盤緩存。一個進程可以隨時改變它所映射的頁面(例如,通過mmap())。某些進程的地址空間也映射進來,但並未實際使用,或者與一個或多個其他進程共享。這使得在實踐中測量每進程內存使用情況是相當難以實現的目標。
並且在虛擬機大小上加上限制也不是一個好主意,因爲如果嘗試使用更多,這將導致進程被終止。
在這種情況下(對於Java進程),這樣做的正確方法是設置堆的最大大小(通過各種記錄良好的JVM啓動選項)。但是,經驗表明,您不應將其設置爲小於1Gb。
Ya馬克你是對的,我找不到任何解決方案這個任務。我試過安德烈的解決方案。但是隻控制虛擬內存。所以我選擇你的最後一點來增加堆內存大小(對於Java)。謝謝很多。 – Mohan 2010-11-22 05:15:52
ulimit -v 102400
eclipse
...給月食100MiB的記憶。
謝謝,在提示這個命令後,它會分配100MB到eclipse。那麼如何找到這個分配內存的日食。 – Mohan 2010-11-20 07:53:18
- 1. 進程的內存分配
- 2. 在linux中分配內存的問題
- 3. 在Linux中的內存分配
- 4. Linux共享內存分配行爲
- 5. Linux進程分配的內存使用情況
- 6. 限制Linux進程內存
- 7. 預分配內存並在分叉進程中使用。
- 8. 在Linux上搜索進程的內存
- 9. 如何將分配的內存分解爲多個區域並分配進程?
- 10. 在Linux內核中分配可交換內存
- 11. Linux內存使用率高時Linux進程釋放內存?
- 12. 爲linux內核配置物理內存
- 13. 在內存分配分析過程中內存分配不斷增加
- 14. 在32位.NET進程中分配超過1,000 MB的內存
- 15. 如何在Linux內核中爲char *類型的字符串分配內存?
- 16. 爲jvm進程分配了多少內存
- 17. 當爲程序分配內存時?
- 18. 程序集內存分配
- 19. 程序內存分配
- 20. 在C++中爲分配內存錯誤分配異常*
- 21. 在Linux中如何處理內存分配小於PAGE_SIZE的內存?
- 22. 在Solaris/Linux中釋放分配的內存
- 23. 內存分配錯誤 - 在Linux中但不是OSX Unix
- 24. 如何在Linux中分配滿足分頁和緩存要求的內存?
- 25. 爲NSString分配內存?
- 26. 分配內存爲載體
- 27. 爲struct「error」分配內存
- 28. 爲結構分配內存
- 29. 內存分配行爲8
- 30. 內存分配內核空間和用戶空間進程
我想將該內存設置爲永久的特定進程。 – Mohan 2010-11-20 08:03:00