shy*_*cha 4 c linux operating-system process
如何找出Linux中有多少RAM和CPU"吃掉"某些进程?以及如何找出所有已运行的进程(包括守护进程和系统进程)?=)
UPD:使用C语言
例如,ps aux将列出所有进程及其所有者,状态,使用的内存等.
编辑:要在Linux下使用C执行此操作,您需要读取proc文件系统中的进程文件.例如,/proc/1/status包含有关init进程(始终具有PID 1)的信息:
char buf[512];
unsigned long vmsize;
const char *token = "VmSize:";
FILE *status = fopen("/proc/1/status", "r");
if (status != NULL) {
while (fgets(buf, sizeof(buf), status)) {
if (strncmp(buf, token, strlen(token)) == 0) {
sscanf(buf, "%*s %lu", &vmsize);
printf("The INIT process' VM size is %lu kilobytes.\n", vmsize);
break;
}
}
fclose(status);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1178 次 |
| 最近记录: |