我启动一个新的bash shell,并执行:
ulimit -m 102400 ulimit -a " core file size (blocks,-c) 0 data seg size (kbytes,-d) unlimited scheduling priority (-e) 20 file size (blocks,-f) unlimited pending signals (-i) 16382 max locked memory (kbytes,-l) 64 max memory size (kbytes,-m) 102400 open files (-n) 1024 pipe size (512 bytes,-p) 8 POSIX message queues (bytes,-q) 819200 real-time priority (-r) 0 stack size (kbytes,-s) 8192 cpu time (seconds,-t) unlimited max user processes (-u) unlimited virtual memory (kbytes,-v) unlimited file locks (-x) unlimited "
然后,我执行编译一个巨大的项目。 它的链接将使用大内存,超过2G。 结果,进程ld使用了超过2G的常驻内存。
有什么不对吗? 如何使用ulimit或可以使用其他程序来限制常驻内存?
限制驻留内存的目标,是因为一个进程几乎使用了所有的内存时,计算机会冻结。
为什么“at”命令总是提醒我,命令将通过sh执行?
使用register_chrdevdynamic分配主数字时,是否有任何意义保留256个小数字?
将符号链接添加到rc <number> .d文件夹以在系统启动过程中启动进程
如何正确使用SIEge来testingGET请求?
增强支持循环文件吗?
从Java执行源命令
grep -v'。*'不起作用
错误:mime-types-data需要Ruby版本> = 2.0
PyAudio打印ALSA警告,不起作用
linux和windows程序如何不同
根据setrlimit的手册页:
RliMIT_RSS
指定进程驻留集的限制(以页为单位)(驻留在RAM中的虚拟页数)。 这个限制仅在linux 2.4.x中有效,x <30,并且仅影响对madvise(2)的调用,指定MADV_WILLNEED
您可能想要通过ulimit -v设置虚拟内存大小
您可以使用cgroups限制驻留内存。 请参阅常驻集大小(RSS)限制不起作用
总结以上是内存溢出为你收集整理的为什么ulimit无法成功限制常驻记忆,以及如何?全部内容,希望文章能够帮你解决为什么ulimit无法成功限制常驻记忆,以及如何?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)