标签: linux arm
我想从用户空间访问PMU,但是在我的系统之一上,PMUSERENR设置为0,这使得其余PMU无法访问。该寄存器为EL0处的RO,因此,如果我尝试对其进行设置,则会收到一条非法指令。有什么办法可以从用户空间强制执行此操作吗? (任何标准系统调用等?我在linux 4.1系统上)
PMUSERENR
如果没有,是否有什么好方法可以获取用户空间中每毫秒的时钟周期数?
答案 0 :(得分:1)
您可以使用perf_event_open从用户空间设置硬件性能计数器,并使用read syscall读取它们。
perf_event_open
read