Raven: A Novel Kernel Debugging Tool on RISC-V
TimeThursday, July 14th2:15pm - 2:37pm PDT
Location3004, Level 3
DescriptionDebugging is an essential part of process during kernel development.
However, debugging features are not available on RISC-V
without the use of external hardware. In this paper, we leverage a
security feature called Physical Memory Protection (PMP) as a debugging
primitive to address this issue. Based on this debugging
primitive, we design Raven, a novel kernel debugging tool with
the standard functionalities (breakpoints, watchpoints, stepping).
A prototype of Raven is implemented on a SiFive
Unmatched development board. Our experiments show that Raven
imposes a moderate overhead to the kernel. For example,
Raven slows down LMBench context switch test by ~20%.