南京邮电大学 微型计算机原理和接口技术 第14章 课件.pptVIP

南京邮电大学 微型计算机原理和接口技术 第14章 课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CALL 选择子:偏移地址 调用门 选择子:偏移地址 目标代码段描述符 段基址 子程序 …… RET 目标代码段 GDT/LDT 使用调用门的转移过程 任务间的转移 利用段间转移指令JMP或者段间调用指令CALL,通过任务门或直接通过任务状态段,可以进行任务间的转移,即任务切换。 在中断/异常或者执行IRET指令时也可能发生任务切换。 因为RET指令的目标地址只能使用代码段描述符,所以,不能通过RET指令实现任务切换。 80386把外部中断称为“中断”,把内部中断称为“异常”。中断又可分为可屏蔽中断和不可屏蔽中断, 异常又分为故障、陷阱和中止。 向量是通过中断门或者陷阱门给出的,中断门或者陷阱门位于中断描述符表IDT中,中断描述表地址是由IDTR(中断描述表寄存器)给出。 14.3 保护模式下的的中断与异常 中断描述表IDT 整个系统只有一个中断描述符表IDT,最大长度是2K。 中断描述符表寄存器IDTR指示IDT在内存中的位置,IDTR是48位的寄存器,其中高32位为基址,低16位为界限。 中断描述符表IDT所含的描述符只能是中断门、陷阱门和任务门。 在保护模式下,CPU只有通过中断门、陷阱门或任务门才能转移到对应的中断或异常处理程序。 门描述符是8个字节长,因此中断或异常产生时,CPU以中断号乘8从IDT中取得对应的门描述符,分解出选择子、偏移量和描述符属性类型,并进行有关检查。最后,根据门描述符类型是中断门、陷阱门还是任务门,分情况转入中断或异常处理程序。 14.4 保护模式下的的输入/输出保护 80386采用I/O特权级IPOL和I/O许可位图的方法来控制输入/输出,实现输入/输出保护。 IOPL存放在标志寄存器EFLAG中,它规定了可以执行所有与I/O相关的指令和访问I/O空间中所有地址的最低特权级。只有当CPL =IOPL时,才被允许随意访问I/O空间中的任何地址。 每个任务都有一个I/O许可位图,它由二进制位串组成。位串中的每一位依次对应一个I/O地址。 I/O许可位图存放在每个任务所对应的任务状态段(TSS)中。 当CPL IOPL时,如果该指令所访问的I/O地址所对应的当前任务的I/O许可位为0,则80386允许该I/O操作,如果I/O许可位为1,则禁止该I/O操作。 IOPL的设置和I/O许可位图的创建只能由操作系统进行。 14.5 操作系统类指令 实模式和任何特权级下可执行的指令 (1)存储全局描述符表寄存器指令 格式:SGDT QWORD PTR 目标操作数 说明:目标操作数是48位(6字节)的存储器操作数。 功能: 把全局描述符表寄存器GDTR的内容存储到目标操作数。 (2)存储中断描述符表寄存器指令 格式:SIDT QWORD PTR目标操作数 说明:目标操作数是48位(6字节)的存储器操作数。 功能: 把中断描述符表寄存器IDTR的内容存储到目标操作数。。 (1)装载全局描述符表寄存器指令 格式:LGDT QWORD PTR 源操作数 说明:源操作数是48位(6字节)的内存操作数。 功能:把源操作数装入到全局描述符表寄存器GDTR中。 (2)装载中断描述符表寄存器指令 格式:LIDT QWORD PTR源操作数 说明:源操作数48位(6字节)的内存操作数。 功能:把存储器中的源操作数装入到中断描述符表寄存器IDTR中。 实模式和在特权级0下可执行的指令 (3)控制寄存器数据传送指令 格式:MOV 目标操作数,源操作数 说明:控制寄存器数据传送指令实现CPU的控制寄存器和32位通用寄存器之间的数据传送。 (4)清任务切换标志指令 格式:CLTS 说明:每当任务切换时,控制寄存器CR0的任务切换标志TS被自动置1。CLTS指令的功能是将TS标志清0。 只能在保护模式下执行的指令 (1)装载局部描述符表寄存器指令 格式:LLDT 源操作数 说明:源操作数可以是16位通用寄存器或内存操作数。 功能:把源操作数中的内容作为指示局部描述符表LDT的选择子装入到LDTR寄存器。 (2)存储局部描述符表寄存器指令 格式:SLDT 源操作数 说明:源操作数可以是16位通用寄存器或内存操作数。 功能:把局部描述符表寄存器LDTR的内容存储到源操作数。 (3)装载任务寄存器指令 格式:LTR 源操作数 说明:源操作数可以是16位通用寄存器或内存操作数。 功能:将源操作数作为指向TSS描述符的选择子装载到任务寄存器TR。 (4)存储任务寄存器指令 格式:STR 源操作数 说明:源操作数可以是16位通用寄存器或内存操作数。 功能:把TR所含的指向当前任务TSS描述符的选择子存储到源操作数。 第十

文档评论(0)

yurixiang1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档