Debugging is an essential part of 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, introspection). A prototype of Raven is implemented on a SiFive Unmatched development board. Our experiments show that Raven imposes a moderate but acceptable overhead to the kernel. Moreover, a real-world debugging scenario is set up to test its effectiveness.
CITATION STYLE
Lu, H., & Zhang, F. (2022). Raven: A Novel Kernel Debugging Tool on RISC-V. In Proceedings - Design Automation Conference (pp. 1039–1044). Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1145/3489517.3530583
Mendeley helps you to discover research relevant for your work.