- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(操作系统分析与设计复习资料2011版
第一章: mov bx,000ch mov dl,0 int 10h retBootMessage: db hello,os world!times 510-($-$$) db 0dw 0xaa55这是第一章的程序,从中可以看出起始位置是07c00h,程序的结束标志是0xaa55。$表示当前行被汇编后的地址。$$表示一个节的开始处被汇编后的地址。那么$-$$表示本行距离程序开始处的相对距离。1.对于程序的说明实际上以上程序只是一个引导扇区(Boot Sector),不是完整的OS,当计算机电源被打开时,它会加电自检(POST),然后寻找启动盘,如果是从软盘启动,计算机就会检查软盘的0面0磁道1扇区,如果发现它以0xaa55结束,并且包含了少于512字节的执行码,那么BIOS认为它是一个引导扇区。一旦发现了引导扇区,就将这512字节放入内存地址0000:7c00处,然后跳转并且移交控制器。2.制作软盘过程本身这段程序是boot.asm,是汇编程序,然后使用工具nasm将其转换为boot.bin,然后使用软盘绝对扇区读写工具将这个文件写到一张空白软盘的第一个扇区。(.bin文件的说明:*.bin是Foxbase定义的一种特殊的可执行文件,它同DOS的.com文件类似,区别在于.com文件是从100H开始运行的,而.bin从0开始,.bin的调用参数保存在DS:BX中。如果在Foxbase中,你可以使用Call命令调用。如果你在VFP中,将无法直接调用,只能使用Debug反汇编,分析其功能,然后重新编写.)3.方括号[]的使用在NASM中,任何不被方括号[]括起来的标签或变量名都被认为是地址,访问标签中的内容必须使用[]。4.计算机启动过程加电自检(POST)初始化设备测试设备更新ESCD: ESCD是系统BIOS用来与OS交换硬件配置信息的一种手段。启动操作系统第三章: 3.1 认识保护模式1.对于这一节的程序的理解先是定义了一些描述符(LABEL_GDT,LABEL_DESC_CODE32,LABEL_DESC_VIDEO),然后定义了GdtPtr,它是一个6字节的数据结构,前两字节表示GDT的界限(即描述符的界限),后4字节表示GDT的基地址(GdtPtr就是用来描述GDT的,会用一个寄存器GDTR来保存它的值)。然后定义两个选择子,分别指向已定义的描述符。以上是数据区。代码区做的事情:初始化32位代码段描述符,为加载GDTR作准备,加载GDTR: lgdt [GdtPtr],然后是关中断:cli,(保护模式下中断处理的机制是不同的,不关中断会出错)打开地址线A20,然后将cr0的PE位置为1(0:实模式,1:保护模式),准备切换到保护模式,跳转到保护模式中 jmp dword SelectorCode32:0 2.Descriptor是一个宏,它是一个8字节的数据结构。三个描述符组成了一个结构数组。3.[BITS 16]说明这是一个16位的代码段,而[BITS 32]是32位的代码段。程序中的知识点要搞清楚的有:GDT是什么?作用?程序对GDT做了什么?jmp SelectorCode32:0? GDT1.在保护模式下,CPU有着巨大的寻址能力(保护模式下为4G,实模式下为1M),并为强大的32位操作系统提供了更好的硬件保障。2.在保护模式下,段值仅仅变成了一个索引,这个索引指向一个数据结构的一个表项,表项中定义了段的起始地址、界限、属性等内容。这个数据结构就叫GDT,表项就叫描述符。3.描述符分为代码段和数据段描述符,还可以分为系统段描述符和门描述符。4.选择子 TI位 0:GDT,1:LDT当TI和RPL都为0时,选择子就变为了偏移。5.段:偏移经过段机制转化为“线性地址”,而不是物理地址。 JMP1.对于cr0的设置是实模式和保护模式的关键2.jmp dword SelectorCode32:0的作用是将描述符DESC_CODE32对应的段的首地址。3.为什么那儿有一个dword呢?没有dword的话编译出来是16位的代码,而目标地址是32位的。进入保护模式的主要步骤:1.准备GDT2.用lgdt加载gdtr3.打开A204.设置cr0的PE位5.跳转,进入保护模式描述符的属性1.P位存在位 P=1,表示在段内存中存在;P=0则在内存中不存在。2.DPL位描述符特权级有0,1,2,3级,数字越小级别越大3.S位指明描述符是数据段/代码段(s=1) 还是系统段/门描述符(s=0) 3.2保护模式进阶在这一节中,首先在上一节程序的基础上改写:(1)跳入保护模式之后再次跳回实模式(2)读写大地址内存对于读大地址内容,它是先读,然后再写,然后再读,以此来判断是否可
您可能关注的文档
最近下载
- 二单元民族学的源流理论视角及研究方法.ppt
- 我国政务B站号传播效果现状及影响因素研究.docx VIP
- DB15T 3962.7-2025绿色矿山建设规范 第7部分:水泥灰岩行业.pdf VIP
- 高中语文统编版下册《祝福》、《林教头风雪山神庙》联读 (1).pptx
- 一种D-手性肌醇的制备方法.pdf VIP
- 辽宁省2024学年度普通高中学业水平合格性考试化学试题及答案.docx
- 跨境电商平台的财务管理策略.docx VIP
- 合规性评价报告(2025年).docx
- 【英语试卷+答案】2024年宁德市4月初中毕业班质量检测.pdf VIP
- 2025云南省红河州开远市纪委监委招聘合同制辅助人员(8人)笔试备考试题及答案解析.docx VIP
文档评论(0)