ren*_*ren 27 kernel memory system-calls
man getrusage 2 说
ru_maxrss (since Linux 2.6.32)
This is the maximum resident set size used (in kilobytes). For RUSAGE_CHILDREN, this is the resident set size of the largest
child, not the maximum resident set size of the process tree.
Run Code Online (Sandbox Code Playgroud)
那么这个数字究竟是什么意思呢?
Mat*_*Mat 32
进程的常驻集大小是属于它的内存量,当前存在(常驻)在 RAM(真实 RAM,未交换或非驻留)中。
例如,如果一个进程分配了一块内存(比如 100Mb)并主动使用它(读/写),它的常驻集大小将是大约 100Mb(加上开销、代码段等)。如果在进程停止使用(但不释放)该内存一段时间后,操作系统可以选择交换该内存的块以进行交换,为其他进程(或缓存)腾出空间。然后,驻留集大小将减少内核换出的数量。如果进程唤醒并开始重新使用该内存,内核将从交换中重新加载数据,并且驻留集大小将再次增加。
该ru_maxrss领域struct rusage是“高水位线”的驻留集大小。它指示此过程的峰值 RAM 使用量(使用 时RUSAGE_SELF)。
您可以限制进程的驻留集大小,以避免单个应用程序“吃光”系统上的所有 RAM 并强制其他应用程序交换(或因内存不足而完全失败)。
| 归档时间: |
|
| 查看次数: |
22000 次 |
| 最近记录: |