源码书籍推荐
Rust
《Linux内核0.11完全注释》0.11
Bochs
qemu+gdb
网上修改版本:https://github.com/yuan-xy/Linux-0.11
ubuntu16.04.71
2
3
4
5
6
7
8# 带UI启动qemu
qemu-system-x86_64 -m 16M -boot a -fda Image -hda $(HDA_IMG) -s -S
# 其他终端启动gdb
gdb tool/system
target remote :1234
# VSCode ssh远程连接后启动调试
launch.json1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18{
"version": "0.2.0",
"configurations": [
{
"name": "gdb-0.11",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/Linux-0.11-master/tools/system",
"miDebuggerServerAddress": "127.0.0.1:1234",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}/Linux-0.11-master",
"environment": [],
"externalConsole": false,
"MIMode": "gdb"
}
]
}
vscode打印内存地址数据,调试控制台1
2
3
4# 执行gdb命令x,打印0x0处内存,打印32字节
# xb,字节(默认)
# xw,4字节
-exec x/32xb 0x0
《Linux内核源代码情景分析》 2.4.0
《Linux Kernel Development》2.6
qemu+gdb