|
PatchworkOS
3984a1d
A non-POSIX operating system.
|
Performance driver. More...
Performance driver.
The Performance driver is exposed in the /dev/perf directory. Below is an overview of the files in this directory.
The /dev/perf/cpu file contains per-CPU performance data in the following format:
The /dev/perf/mem file contains memory performance data in the following format:
Data Structures | |
| struct | perf_cpu_ctx_t |
| Per-CPU performance context. More... | |
| struct | perf_process_ctx_t |
| struct | perf_thread_ctx_t |
| Per-Thread performance context. More... | |
| struct | stat_process_ctx_t |
| Per-Process performance context. More... | |
Functions | |
| void | perf_cpu_ctx_init (perf_cpu_ctx_t *ctx) |
| Initializes a per-CPU performance context, must be called on the CPU that owns the context. | |
| void | perf_process_ctx_init (perf_process_ctx_t *ctx) |
| Initializes a per-process performance context. | |
| void | perf_thread_ctx_init (perf_thread_ctx_t *ctx) |
| Initializes a per-thread performance context. | |
| void | perf_init (void) |
| Initializes the performance driver. | |
| void | perf_interrupt_begin (cpu_t *self) |
| Called at the beginning of an interrupt to update cpu performance data. | |
| void | perf_interrupt_end (cpu_t *self) |
| Called at the end of an interrupt to update cpu performance data. | |
| void | perf_syscall_begin (void) |
| Called at the beginning of a syscall to update process performance data. | |
| void | perf_syscall_end (void) |
| Called at the end of a syscall to update process performance data. | |
| void perf_cpu_ctx_init | ( | perf_cpu_ctx_t * | ctx | ) |
| void perf_process_ctx_init | ( | perf_process_ctx_t * | ctx | ) |
| void perf_thread_ctx_init | ( | perf_thread_ctx_t * | ctx | ) |