Debugging Kernel and User Space Synchronously Based on GDB

Debugging operating systems running on multiple privilege levels is challenging due to symbol table inconsistencies caused by context switching. Conventional debuggers fail to manage breakpoints and symbol tables when the OS transitions between kernel and multiple user processes. To address this, we propose a debugging method based on breakpoint groups and their switching automation. By grouping and caching breakpoints and dynamically switching to the working breakpoint group, our method ensures consistent debugging across different execution environments. Experiments on RISC-V hardware and QEMU confirm the effectiveness of the method in debugging OSes like xv6 (written in C) and Starry (written in Rust and C). This work offers a practical and portable solution for cross-privilege-level and multi-process debugging in both academic and real-world OS development.

Authors

Institutions

Publication Details

Published
2025-04-25
DOI
https://doi.org/10.1109/iccea65460.2025.11103326
Primary Topic
Distributed and Parallel Computing Systems
Type
article
Field-Weighted Citation Impact
0.00

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Debugging Kernel and User Space Synchronously Based on GDB

Jingbang Wu, Yifan Zhang, Zhiyang Chen, Hongyuan Wang et al.
Distributed and Parallel Computing Systems
article

Debugging Kernel and User Space Synchronously Based on GDB

Jingbang Wu, Yifan Zhang, Zhiyang Chen, Hongyuan Wang, Yaqi Yang
article en

Abstract

Debugging operating systems running on multiple privilege levels is challenging due to symbol table inconsistencies caused by context switching. Conventional debuggers fail to manage breakpoints and symbol tables when the OS transitions between kernel and multiple user processes. To address this, we propose a debugging method based on breakpoint groups and their switching automation. By grouping and caching breakpoints and dynamically switching to the working breakpoint group, our method ensures consistent debugging across different execution environments. Experiments on RISC-V hardware and QEMU confirm the effectiveness of the method in debugging OSes like xv6 (written in C) and Starry (written in Rust and C). This work offers a practical and portable solution for cross-privilege-level and multi-process debugging in both academic and real-world OS development.

Beijing Technology and Business University (CN), Beijing University of Technology (CN)
National Natural Science Foundation of China
Openalex Percentile: Top 77%
Distributed and Parallel Computing Systems
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.