bochs 调试步骤 演示步骤

演示的三个进程行为:
1:print:A0,A1,A2..
2: print:B1000,B1001,B1002...
3: Print:C2000,C2001,C2002...

boot.asm
;[][1]b 0x7c55->清屏
;[][2]b 0x7c59->显示booting

;[] [3]b 0x7cca -->; 找到 LOADER.BIN
;查下 x /13xcb es:di -11

;[][4]b 0x7d14
; 这一句正式跳转到已加载到内存中的
LOADER.BIN 的开始处

; 开始执行 LOADER.BIN 的代码
; Boot Sector 的使命到此结束

loader.asm
;[][1]b 0x9028e-->
准备切换到保护模式:查看cr0
;[][2]b 0x90291-->
真正进入保护模式
;特别注意:[][3]b 0x903a8-->分页程序;
查看cr3变化
;使用next
;[][4]接着不设断点,step,step,进入内核

kernel.asm
;[][1]b 0x30416-->; 在此函数中改变了gdt_ptr,
让它指向新的GDT,其中初始化了8295a
;[][2];b 0x30439-->jmp kernel_main,
此函数中初始化 进程表
,读取不同的任务入口地址,堆栈顶部,和进程名。

;[][3]b 0x30958-->restart 函数;
完成ring0到ring 1的跳转

;[][4]b 0x30780-->itetd
:retun from interruput
-->此后执行三个进程。

























相关文档
最新文档