meminfo 中 TOTAL PSS TOTAL RSS TOTAL SWAP PSS
时间: 2023-04-01 15:04:12 浏览: 476
这些是用于描述 Android 系统内存使用情况的指标,其中 TOTAL PSS 表示进程的私有和共享内存加上系统的共享库占用的内存,TOTAL RSS 表示进程的私有内存加上共享内存,TOTAL SWAP PSS 表示被交换到磁盘上的内存大小。
相关问题
TOTAL PSS: 24492 TOTAL RSS: 87324 TOTAL SWAP PSS: 4063 中我只想要TOTAL PSS
你可以在 `excecmd` 函数中修改命令字符串,只保留 `TOTAL PSS` 部分的输出,可以这样修改:
```python
if 'Windows' in platform.system():
cmd = "adb shell dumpsys meminfo %s |findstr \"TOTAL PSS:\""
else:
cmd = "adb shell dumpsys meminfo %s |grep \"TOTAL PSS:\""
```
这样,`excecmd` 函数只会返回 `TOTAL PSS:` 部分的输出,而不包括 `TOTAL RSS:` 和 `TOTAL SWAP PSS:`。然后在 `get_mem` 函数中,将提取出来的 `pss1` 转换为整数即可:
```python
for proc in procs:
pss1 = int(excecmd(cmd % proc)[1].split()[2])
pss.append(pss1)
pss = max_avg(pss)[2]
result["pss"] = pss
```
这样就可以只返回 `TOTAL PSS` 的值了。
/proc/meminfo内的PSS是什么
PSS是一种内存占用指标,它代表“Proportional Set Size”,即按比例分配的集合大小。在Linux操作系统中,每个进程都有一个PSS值,它表示该进程当前使用的物理内存大小,按照进程所占用的共享内存大小进行分配。PSS指标是一种更精确的内存占用指标,它可以准确地反映出每个进程实际使用的物理内存大小,包括共享内存和非共享内存,并且避免了共享内存被重复计算的问题。因此,PSS是一个更准确和可靠的内存占用指标,可以帮助系统管理员更好地了解系统中各个进程的内存占用情况,从而更好地进行系统优化和资源管理。
阅读全文