操作系统编写之引导扇区 1
操作系统编写之引导扇区
你可能还没有从刚刚的兴奋中走出来,可是我不得不告诉你,实际上,你刚刚所完成的并不是一个完整的操作系统,而仅仅是一个最最简单的引导扇区(Boot Sector)。然而不管我们完成的是什么,至少,它是直接在裸机上运行的,不依赖于任何其他软件,所以,这和我们平时所编写的应用软件有本质的区别。它不是操作系统,但已经具备了操作系统的一个特性。
我们知道,当计算机电源被打开时,它会先进行加电自检(POST),然后寻找启动盘,如果是选择从软盘启动,计算机就会检查软盘的0面0磁道1扇区,如果发现它以0xAA55结束,则BIOS认为它是一个引导扇区。当然,一个正确的引导扇区除了以0xAA55结束之外,还应该包含一段少于512字节的执行码。
好了,一旦BIOS发现了引导扇区,就会将这512字节的内容装载到内存地址0000:7c00处,然后跳转到0000:7c00处将控制权彻底交给这段引导代码。到此为止,计算机不再由BIOS中固有的程序来控制,而变成由操作系统的一部分来控制。
现在,你可能明白了为什么在那段代码的第一行会出现“org 07c00”这样的代码。没错,这行代码就是告诉编译器,将来我们的这段程序要被加载到内存偏移地址0x7c00处。好了,下面将对代码的其他部分进行详细解释。
操作系统编写之引导扇区 1相关推荐
- 操作系统编写之引导扇区
操作系统编写之引导扇区 你可能还没有从刚刚的兴奋中走出来,可是我不得不告诉你,实际上,你刚刚所完成的并不是一个完整的操作系统,而仅仅是一个最最简单的引导扇区(Boot Sector).然而不管我们完成 ...
- 【OS学习笔记】六 实模式:编写主引导扇区代码
上一篇文章学习了:计算机的启动过程(点击链接查看上一篇文章) 这篇文章学习记录为:编写主引导扇区代码. 参考:<X86汇编语言-从实模式到保护模式>-李忠.纯学习笔记,更详细内容请阅读正版 ...
- 【OS学习笔记】八 实模式:编写主引导扇区代码-另一种更高效的写法
学习交流加 个人qq: 1126137994 个人微信: liu1126137994 学习交流资源分享qq群: 962535112 上一篇文章,我们用比较原始的方法编写了主引导扇区的代码.点击链接查看 ...
- [书]x86汇编语言:从实模式到保护模式 -- 第六、七章 编写主引导扇区代码
第六章 编写主引导扇区代码(启动时显示文字:Label offset:) PART 1 >> 用VirtualBox显示最终效果 1.1 汇编 启用nasm的工具"nasm-sh ...
- 第五章 编写主引导扇区代码
本章的思路是,在本机上上写一段代码(这些代码的意义是往显存中写一些数据)-->编译成bin文件-->写入到vhd硬盘的引导扇区(即第一扇区,见第四章详述)-->开机从硬盘启动,从而执 ...
- 第5章 编写主引导扇区代码
开机过程 一.在屏幕上显示文本 01.显卡和显存 每个字节表示三原色中的一个(红绿蓝) 两种模式|-文本模式|-图像模式两种模式的显存是分开的;文本模式下,显存的内容是文本的编码:图像模式下,显存的内 ...
- 30天自制操作系统 - 取代软盘,用U盘写入引导扇区
背景 作者是在2006年发布此书的(翻译版是在2012年在中国发售),当时可能还能找到带有软驱的计算机.但是时过境迁,现在已经不存在这种老古董东西了. 简单总结一下学习到第三天的一些更变. 更变 书籍 ...
- 操作系统1——引导扇区的理解
在操作系统这个方面,我记得自己经常听到主引导记录这个名词,但是对于它的理解并不深,只知道它在系统加载的时候很重要.现在我想自己写一个操作系统,但是想到第一步该怎么做呢?书上说是用汇编写引导程序.那么这 ...
- syslinux引导扇区不支持ntfs文件系统_实战 FAT12 文件系统
1. 引言 经过一系列的文章,我们终于完成了从实地址模式跳转到保护模式,并且实现了分段.分页以及保护模式下的中断与异常机制. 保护模式究竟"保护"了什么 可是我们除了最初的时候,在 ...
- 读写U盘(FAT32)引导扇区
看了<自己动手写操作系统>后,也想自己打造一个迷你操作系统,但是书中使用的软盘现在基本已经绝迹了,而U盘成为一种喜闻乐见的工具.因此想将操作系统写入U盘中,而读写U盘的引导扇区成为成功的关 ...
最新文章
- windows server 2008 - 创建域和本机用户
- 乱谈Qt事件循环嵌套
- intel服务器修复两个漏洞,游戏厂商:修复Intel处理器漏洞后 服务器超卡
- Apollo 2.0发布前 试乘百度L3、L4级自动驾驶汽车
- C语言在计算机专业的功能,C语言程序设计在高职院校计算机专业教学中重要作用.pdf...
- ae预览不了多次_AE不能预览全部视频的原因分析及解决方案
- 循环链表--约瑟夫问题
- 智能家居火了这么久 何时到我家?
- 高级商务办公软件应用【4】
- 倪捷:智能语音扩展数字化服务
- ios11.3相册闪退_iOS11拍照闪退,保存图片闪退问题(writeImageToSavedPhotosAlbum)
- Java基础知识(七) 输入输出流
- office ppsx逻辑漏洞(CVE-2017-8570)
- 所有的伟大都源于一次勇敢的开始
- Shiro学习(3)shiroConfig配置类
- 万得数据写入Excel
- 优秀成绩标记—— 小王是班级干部,对于即将到来的三好学生评选,负责统计平均成绩超过85分的同学
- python 卡片概念学习
- HDU 3105 Fred's Lotto Tickets(数学题)
- 如何将本地的项目推送至git仓库
热门文章
- Euler Tour Tree与dynamic connectivity
- Java反射机制demo(三)—获取类中的构造函数
- Java发送HttpRequest
- LightOJ 1366 - Pair of Touching Circles (在矩形中只需要两个圆相外切,有多少种) 半径圆心均为整数)...
- 关于python循环
- MFC之添加PNG,JPG图片
- (转)apple-touch-icon-precomposed 和 apple-touch-icon属性区别
- Win7下Tomcat7和Apache2.2集成
- ACL'21 | 对比学习论文一句话总结
- 从Label Smoothing和Knowledge Distillation理解Soft Label