关于保护模式的一点感想

都说保护模式是个坎,在断断续续对于他的学习后,做一个总结,一方面为之前的学习重新巩固,另一方面为以后再学习提供模板,更多的是希望能得到大家的指正,以至于不会对保护模式的理解偏差过远!

计算机有3种模式(80386(含)后):实模式保护模式虚拟8086模式

我觉得这3种模式,实际上就是3种技术,这3种技术是通过硬件(intel)来实现的,对于刚开始接触保护模式概念的时候,可以对硬件层面上的略过不考虑。我们只要知道只要我们这样做,就可以达到要求等等,等以后深入了,也可深究。

有个故事:8086祖爷爷,原始社会敌人(应用程序等)比较少,只用实模式就能对付了。时代不断演进,敌人也在慢慢强大,当然祖爷爷的后代也慢慢变异。到80386这一代,自身条件也够了,敌人又来有理剥削了,用实模式已经满足不了,80386也不是等闲之辈啊,某天突然就开创了保护模式的武功,之后便能屈能申了。但对于祖爷爷那辈的敌人呢,你跟他语言不通,还得用祖爷爷那套,所以就练了虚拟8086啊。

在保护模式的学习过程中,有一些难点,其中感觉最多的就是里面”段”字太多了,刚开始以为所有的段都应该对应起来,其实现在回想一下,他们是属于不同范畴的东西。
比如分段机制,系统段,全局段,局部段,门描述符(无“段”字),代码段,段寄存器。《自》solrex版,oldlinux,google上面的资料应该能满足大家的要求了。

下面为几个关键点帮助我去理解保护模式:

1:
在实模式中段寄存器存放的内容为段值,再加上偏移地址就获得物理地址了
在保护模式中,段寄存器存在的内容为段选择子13位,剩下3位中1位一个全局/局部选择位,另2位为特权级,用于跟段描述符中的特权级比较,看是否越界。

2:
有全局描述符表寄存器,局部描述符表寄存器,中断描述符表寄存器,控制寄存器。
描述符是用来描述段的。那么描述符所在的段又是谁来描述的呢?他不能自己描述自己,所以他的描述是在全局描述符表寄存器里的。同样局部,终端等也一样。

学习保护模式,我觉得有《自己动手写OS》solrex版《自》于渊版《protmode.chm》李彦昌版oldlinux 赵炯版就可以了。

读书贵在用心,这里只是抛砖引玉,努力以后能有更深层次的体会与大家分享。再次希望大家能不吝指教!

Advertisements

About 追码人

running on the way
此条目发表在oldlinux分类目录,贴了, 标签。将固定链接加入收藏夹。

2 Responses to 关于保护模式的一点感想

  1. 中亚岁月说道:

    呵呵,这是你的博客啊?来看看,加油啊,做自己的OS!!

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s