Android 能用上的Linux命令

Android 能用上的Linux命令

  • 参考:常用命令

  • 获取 CPU 核心数

    1
    cat /sys/devices/system/cpu/possible
  • 获取第一个 CPU 的最大频率

    1
    cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq   
  • 获取第二个CPU的最小频率

    1
    cat /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_min_freq
  • CPU 瞬时情况

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    whyred:/ $ cat /proc/stat
    cpu 731136 50041 1038145 270823460 35086 3933864 332437 0 0 0
    cpu0 187090 11104 314921 33420523 7263 71201 58251 0 0 0
    cpu1 244047 13970 352376 33355729 9002 58805 59312 0 0 0
    cpu2 130440 8604 171217 33747327 8157 33540 20522 0 0 0
    cpu3 40515 3794 104055 33956680 9009 19027 16455 0 0 0
    cpu4 59788 4665 43842 34035844 483 206098 44471 0 0 0
    cpu5 34608 3677 25619 34081033 420 159429 132489 0 0 0
    cpu6 30523 2268 23459 34088923 348 137672 739 0 0 0
    cpu7 4122 1954 2652 34137396 399 3248088 193 0 0 0
    intr ...

    这些数值的单位都是 jiffies,jiffies 是内核中的一个全局变量,用来记录系统启动以来产生的节拍数,在 Linux 中,一个节拍大致可以理解为操作系统进程调度的最小时间片,不同的 Linux 系统内核这个值可能不同,通常在 1ms 到 10ms 之间

    对应的各项指标如下:

    1
    CPU (user, nice, system, idle, iowait, irq, softirq, stealstolen, guest)
    • user:表示从系统启动开始至今处于用户态的运行时间,注意不包含 nice 值为负的进程
    • nice:表示从系统启动开始至今nice 值为负的进程所占用的 CPU 时间
    • system:表示从系统启动开始至今处于内核态的运行时间
    • idle:表示从系统启动开始至今除 IO 等待时间以外的其他等待时间
    • iowait:表示从系统启动开始至今的IO 等待时间。(从Linux V2.5.41开始)
    • irq:表示从系统启动开始至今的硬中断时间。(从Linux V2.6.0-test4开始)
    • softirq:表示从系统启动开始至今的软中断时间。(从Linux V2.6.0-test4开始)
    • stealstolen:表示当在虚拟化环境中运行时在其他操作系统中所花费的时间。在Android系统下此值为0。(从Linux V2.6.11开始)
    • guest:表示当在Linux内核的控制下为其它操作系统运行虚拟CPU所花费的时间。在Android系统下此值为0。(从 V2.6.24开始)