操作系统之loader的实现

上一章已经讲解了笔记本从开始到bios加载MBR(主引导扇区)的相关内容.

这章将介绍MBR跳转到loader的执行,以及用显卡直接输出到字符.有可能会有疑问为何还要写loader.因为mbr只能是512字节.这么小的空间没法做啥.只能作为跳板所以写个loader用来加载内核.


从图可知.显卡的文本模式映射到了B8000处.只要把字符移到此处.就可以在屏幕显示字符,并且每个字符占用2个字节(一个显示字母一个控制颜色).比如

mov byte [B800:0x04],'M' ,mov byte [B800:0x05] 0xA4 将显示一个 一个闪烁的M .字符由字母跟属性控制.前一个是字母显示.第二个是显示的属性比如颜色闪烁之类的

具体文本模式的第二个字节显示属性.请自行google

section MBR vstart=0x7c00
jmp start
;ds:si指向数据源.es:di指向显存
 Message  db 'ZYW_OS'
start:
	mov ax,0xb800
	mov es,ax
	mov di,0
	mov sp,0x7c00
	mov si,Message
	
; 清屏(摘自百度)
;利用0x06号功能,上卷全部行,则可清屏。
; -----------------------------------------------------------
;INT 0x10   功能号:0x06	   功能描述:上卷窗口
;-----------------------------------
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值