练习一
操作系统镜像文件ucore.img是如何一步步生成的
使用make V=查看make过程中的具体命令
gcc将kern/init/init.c编译生成init.o
gcc将kern/libs/readline.c编译生成readline.o
gcc将kern/libs/stdio.c编译生成stdio.o
gcc将kern/debug/kdebug.c编译生成kdebug.o
gcc将kern/debug/kmonitor.c编译生成kmonitor.o
gcc将kern/debug/panic.c编译生成panic.o
gcc将kern/driver/clock.c编译生成clock.o
gcc将kern/driver/console.c编译生成console.o
gcc将kern/driver/intr.c编译生成intr.c
gcc将kern/driver/picirq.c编译生成picirq.o
gcc将kern/trap/trap.c编译生成trap.o
gcc将kern/trap/trapentry.S编译生成trapentry.o
gcc将kern/trap/vectors.S编译生成vectors.o
gcc将kern/mm/pmm.c编译生成pmm.o
gcc将libs/printfmt.c编译生成printfmt.o
gcc将libs/string.c编译生成string.o
ld将gcc编译成的目标文件链接形成ELF格式的可执行文件kernel
gcc将boot/bootasm.S编译生成bootasm.o
gcc将boot/bootmain.c编译生成bootmain.o
gcc将tools/sign.c编译生成sign.o
ld将gcc编译成的目标文件链接形成ELF格式的可执行文件bootblock
dd将bootblock和kernel放入虚拟硬盘生成操作系统镜像文件ucore.img
一个被系统认为是规范的硬盘主引导扇区的特征是什么
查看tools文件夹下sign.c代码
大小为512字节
扇区末尾为固定的0x55AA