中国金融网 加入收藏    设为首页
首页
国内资讯社会财经科技教育时尚娱乐房产家居汽车母婴健康商业区块链生活企业传媒区域经济旅游体育
您现在的位置:首页 > 国内资讯 > 正文
Linux0.11第一回最开始的两行代码
2022-09-29 04:04      来源:IT之家      编辑:山歌      阅读量:19926   

从这篇文章开始,你将跟随我进入这个操作系统的梦想之旅!

不用担心,每一章的内容都会很少,不用带着沉重的负担去学习像读小说一样跟我读

话不多说,直奔主题当你按下开机键,主板上预先写好的固件程序BIOS会将硬盘引导区的512字节数据原封不动的复制到内存中的0x7c00,跳转到那个位置执行

引导区的定义非常简单只要硬盘中0盘0通道1扇区512字节的后两个字节分别是0x55和0xaa,BIOS就会认为是引导区

所以对于我们理解操作系统来说,此时的BIOS只是一个代码搬运工,将512字节的二进制数据从硬盘运送到内存中所以作为操作系统的开发者,只需要将操作系统的初始代码编译存储在硬盘的磁盘0,通道0,扇区1即可之后,BIOS会帮我们把它放在内存里,跳过去执行

Linux—0.11的初始代码就是这个用汇编语言写的bootsect.s,位于boot文件夹下。

通过编译,这个bootsect.s会被编译成二进制文件,存储在引导区的第一个扇区。

然后就像刚才说的,会从BIOS移到内存0x7c00,CPU从这个位置开始,继续无脑的执行一条又一条语句。

那么我们的梦想之旅就从这个文件的第一行代码开始吧!

movax,0x07c0movds,ax

好了,先看两行。

这段代码是用汇编语言编写的,这意味着将值0x07c0复制到ax寄存器中,然后将ax寄存器中的值复制到ds寄存器中实际上,所有这些折腾的结果是,这个寄存器ds中的值变成了0x07c0

Ds是一个16位段寄存器,它专门代表数据段寄存器,并在寻址存储器时充当段基址你什么意思

movax,

实际上相当于

movax,

默认添加Ds,这意味着在ds的这一段的基址,未来偏移0x0001个单位,并将该位置的存储器数据复制到ax寄存器中。

打个比喻,你跟朋友商量一下去哪里玩比较好你说天安门广场,南锣鼓巷,颐和园等等都是偏置地址,省略了北京的基址

当然,你可以说北京的天安门广场和北京的南锣鼓巷,每次都加上前缀北京但是,如果你提前和朋友约定好,我下面说的地方都是北京的,那你就不用每次都背北京二字了方便吗

这是数据段寄存器ds的功能描述一个内存地址很方便,可以省略一个基址这没什么神奇的

ds : 0x0001

北京:南锣鼓巷

看,这个ds是赋给0x07c0的由于x86要在16位实模式下访问20位地址线的历史因素,段基址必须先左移4位然后0x07c0左移四位为0x7c00,与BIOS加载此代码的存储器地址0x7c00完全相同

也就是说后面写的代码和里面访问的数据的内存地址都默认加0x7c00,然后在内存中寻址。

为什么统一加数字0x7c00这很容易解释BIOS规定,当操作系统代码加载到内存0x7c00时,里面的各种数据自然会偏移这么多因此,将数据段寄存器ds设置为该值便于将来通过该基地址访问存储器中的数据

好了,快速消化前面的知识,那么这篇文章就结束了,只有两行代码,小知识,我不骗你。

我希望你能做到可以通过BIOS将操作系统代码加载到内存0x7c00中,我们可以通过mov指令将默认数据段寄存器ds寄存器的值改为0x 07c 00,方便以后的基址寻址这两件事在你脑子里是认可的,没有疑问,方便后面继续

我们身后的世界越来越精彩欲知后事如何,且听下回分解

郑重声明:此文内容为本网站转载企业宣传资讯,目的在于传播更多信息,与本站立场无关。仅供读者参考,并请自行核实相关内容。

 
上一篇: 微众银行与光明实验室达成战略合作 助力国家双碳战略
下一篇:最后一页
 
     栏目排行
  1. 微众银行与光明实验室达成战略合作 助
  2. iQOO10Pro手机推送OriginO
  3. 乌克兰内阁批准建立全国电动汽车充电站网络
  4. 小米柔风立式空调3匹开启预售:分区送风,
  5. 原型链在数据整合方面大展身手,宜信普惠:
  6. 售价2099元,RedmiNote11T
  7. 福布斯:特斯拉CEO马斯克首次登顶美国富
  8. “冷门”家财险8月增速领先低投保率仍待拓
  9. 艾德荣获「2022新浪财经港美股最佳互联
  10. 万物云上市首日开盘“破发”
     栏目推荐
二手房“带押过户”启动满月 成功尝鲜者寥寥无几二手房“带押过户”启动满月 成功尝鲜者寥寥无几
2022年营收78.61亿,汤臣倍健迎来VDS行业新2022年营收78.61亿,汤臣倍健迎来VDS行业新周期
大兴国际氢能示范区兼顾产业发展和配套服务打造员工理想大兴国际氢能示范区兼顾产业发展和配套服务打造员工理想生活蓝本
迪丽热巴穿军绿色也好美!和吴磊同框丝毫没有年龄迪丽热巴穿军绿色也好美!和吴磊同框丝毫没有年龄
绿色塞罕坝 不朽的奇迹绿色塞罕坝 不朽的奇迹