第一步,用汇编程序初始化 CPU 的寄存器、设置 CPU 的工作模式和栈,最重要的是加入了 GRUB 引导协议头;第二步,切换到 C
语言,用 C 语言写好了主函数和控制显卡输出的函数,其间还了解了显卡的一些工作细节。最后,就是编译和安装 Hello OS 了。我们用了
make 工具编译整个代码,其实 make 会根据一些规则调用具体的 nasm、gcc、ld 等编译器,然后形成 Hello OS.bin
文件,你把这个文件写复制到 boot 分区,写好 GRUB 启动项,这样就好了。
开始学极客时间的OS45讲。
第二课踩的坑:
- grub.cfg权限为只读,此时我的解决方法是(暴力)修改权限:
sudo chmod 666 grub.cfg - make工具编译
make -f Makefile
编译得到helloOS.bin
复制到/boot目录下
cp helloOS.bin /boot
同样需要root权限