如何调用函数在linux下获取单个进程得内存、CPU使用率? 请各位朋友帮忙!
by marco_chan - C/C++ - 2012-08-02 10:48:14 阅读(11310) 回复(10)
我在程序开头使用了一个很大的临时数组, 然后在程序后面使用getrusage查看内存的占用情况,但是结果总是0. //view rusage if (getrusage(RUSAGE_SELF, &usage) != 0) { fprintf(stderr, "error here!\n"); } else { printf("max resident set size: %ld\n", usage.ru_maxrss); printf("integral shared memory: %ld\n", usage.ru_ix...
我下载了gcc的源代码,用SourceInsight软件来找getrusage, 但是看不出要包含哪些头文件来使用这个函数, 怎么可以找到要包含哪些头文件来使用getrusage?
最近两天系统老是报内存溢出,然后自动杀死tomcat进程。现象如下: Jan 15 14:25:38 localhost kernel: DMA per-cpu: Jan 15 14:25:38 localhost kernel: cpu 0 hot: low 2, high 6, batch 1 Jan 15 14:25:38 localhost kernel: cpu 0 cold: low 0, high 2, batch 1 Jan 15 14:25:38 localhost kernel: cpu 1 hot: low 2, high 6, batch 1 Jan 15 14:25:38 localhost kernel: cpu 1 cold: low 0, high 2, batch 1 Jan 15 14:25:38 ...
由于我们嵌入式系统的内存只有8Mb,所以想看一下每个进程使用内存的情况,我查了下资料,可以通过Proc来察看,在查看Proc/34/status文件时,看到下面的内存使用情况: VmSize: 1112 kB VmLck: 0 kB VmRSS: 348 kB VmData: 24 kB VmStk: 12 kB VmExe: 8 kB VmLib: 1044 kB 不知这几项有什么联系和区别。 还有在嵌入式中内存的Cache占用的很大空间,不知它有什么用,应该怎么来设置Cache的大小,望高人不吝赐教!!!