30天自制操作系统笔记

这篇博客详细介绍了自制操作系统的前三天笔记,主要内容包括ipl10.nas(引导加载器)、asmhead.nas(模式切换)、bootpack.c(32位C语言部分)和naskfunc.nas(汇编辅助函数)。通过编译和链接,将bootpack.c转化为bootpack.bim,最终形成bootpack.hrb。文中还提供了转换过程中涉及的脚本和文件生成规则,并提示了如何在32位模式下运行。
摘要由CSDN通过智能技术生成

30天自制操作系统笔记(一)

前三天笔记

非基础笔记,主要梳理架构,针对一些不熟悉的知识做些记录。

目录结构

  1. ipl10.nas (bootloader,用于加载软盘,跳转到OS)
  2. asmhead.nas(16位模式下的功能定制 + 32模式切换工作)
  3. bootpack.c(32模式下C语言开发)
  4. naskfunc.nas(C语言无法实现借助汇编实现的功能)
  5. !cons.bat(windows下cmd.exe)
  6. Makefile(文件生成规则+命令)
  7. make.bat(windows下make.exe)

bootpack.c到机器代码

  1. 编译:bootpack.c(C语言)→ bootpack.obj(目标文件)
  2. 链接:bootpack.obj(目标文件)→ bootpack.bim(二进制映像文件)
  3. OS适配:bootpack.bim(二进制映像文件)→ bootpack.hrb(完整机器语言)

Tip1:基本过程上述已经说明,如果希望改变1中的生成目标文件的规则(如将RESB预留位置赋值为0),就需要额外的工作:
1.1. C语言编译器编译:bootpack.c(C语言)→ bootpack.gas (编译)
1.2. gas2nask:bootpack.gas → bootpack.nas(将汇编语言变换成nask能翻译的语言)
1.3. nask:bootpack.nas → bootpack.obj(使用自制的nask工具完成自定义规则)
Tip2:如果想使用上述可执行程序,确保已经切换到32位模式,asmhead.nas完成此工作,进而可以得到haribote.sys

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值