csh中的datasize限制实际上有什么作用?


1

我的.cshrc设置了一个“limit datasize 256000”,但是我的几个正在运行的进程当前超过了这个。例如:

VmPeak:   496840 kB
VmSize:   496840 kB
VmLck:         0 kB
VmHWM:    463408 kB
VmRSS:    463408 kB

VmData:   451552 kB

VmStk:        96 kB
VmExe:      7480 kB
VmLib:     35548 kB
VmPTE:       988 kB
StaBrk: 0a2bb000 kB
Brk:    19c90000 kB
StaStk: ffd4f010 kB

我曾经以为这个过程在遇到这个限制时会失败,但显然没有发生。所以我不确定数据量限制在做什么。我错过了什么吗?


由于这是在.cshrc中设置的,因此这意味着它仅限于该会话。我想这些进程必须在不同的会话下运行,因此不受该限制的约束。
Mutmansky 2014年

在不同的会话下运行不是问题。我在线阅读了一些其他文件,暗示数据大小并不是内核实际执行的,或者分配给进程的内存的初始大小足够大,以至于brk()或sbrk()实际上没有从内存中获取更多内存。操作系统因此从不执行限制的强制执行点。仍然不确定这里到底发生了什么。
Mutmansky 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.