벤치마크를 제공하는 프로그램이 있지만 해당 프로그램은 OS에 구애받지 않고 CPU 주파수를 읽는 방법을 모릅니다. 테스트 프로그램은 스크립트를 통해 구동됩니다. CPU 주파수를 제공하면 프로그램이 작업 처리량을 계산할 수 있습니다.
가장 정확한 읽기를 위해 현재 CPU 주파수를 제공하려고 생각했지만 값은 루트에 대해서는 읽기 전용이고 다른 사람에게는 액세스할 수 없는 것으로 보입니다.
$ ls -Al /sys/devices/system/cpu/cpu0/cpufreq/
total 0
-r--r--r-- 1 root root 4096 Jan 27 23:19 affected_cpus
-r-------- 1 root root 4096 Jan 27 23:19 cpuinfo_cur_freq
-r--r--r-- 1 root root 4096 Jan 27 23:19 cpuinfo_max_freq
-r--r--r-- 1 root root 4096 Jan 27 23:19 cpuinfo_min_freq
...
-rw-r--r-- 1 root root 4096 Jan 27 23:19 scaling_max_freq
-rw-r--r-- 1 root root 4096 Jan 27 23:19 scaling_min_freq
-rw-r--r-- 1 root root 4096 Jan 27 23:19 scaling_setspeed
처럼ls -l
쇼,cpuinfo_cur_freq
해당 특정 ACL이 있는 유일한 개체입니다. 다른 항목은 대부분0444
(0644
일부).
현재 CPU 주파수가 루트에 대해서는 읽기 전용이고 다른 사람에 대해서는 액세스가 불가능한 이유는 무엇입니까?
답변1
당신은 읽을 수 있어야합니다
scaling_cur_freq
질문에 답하려면:
읽는 것 같다.
cpuinfo_cur_freq
하드웨어와 직접 통신하거나 - 구현에 따라 - 분명히 권한이 부여되어서는 안 되는 펌웨어와 통신합니다.