January 2018
Intermediate to advanced
456 pages
12h 49m
English
The interface introduces a sys_perf_event_open() syscall, with the counters being started and stopped using ioctls, and read either with read() calls or mmapping samples into circular buffers. The perf_event_open() syscall is defined as follows:
#include <linux/perf_event.h>
#include <linux/hw_breakpoint.h>
int perf_event_open(struct perf_event_attr *attr,
pid_t pid, int cpu, int group_fd,
unsigned long flags);
There is no C library wrapper for it, so it needs to be called using syscall().
Read now
Unlock full access