实模式和保护模式的区别

您所在的位置:网站首页 实模式和保护模式的主要区别 实模式和保护模式的区别

实模式和保护模式的区别

2023-06-19 02:23| 来源: 网络整理| 查看: 265

实模式和保护模式的区别

 

 

2009-08-31 20:19 551

人阅读

 

评论

(1) 

收藏

 

举报

 

 

80386

开始,

cpu

有三种工作方式:实模式,保护模式和虚拟

8086

模式。

只有在刚刚启

动的时候是

real-mode

,等到

linux

操作系统运行起来以后就运行在保护模式(所以存在一

个启动时的模式转换问题)

 

  

 

  

实模式只能访问地址在

1M

以下的内存称为常规内存,我们把地址在

1M 

  

以上的内存称

为扩展内存。

 

  

 

  

在保护模式下,全部

32

条地址线有效,可寻址高达

4G

字节的物理地址空间

  

 

  

扩充的存储器分段管理机制和可选的存储器分页管理机制,

不仅为存储器共享和保护提供

了硬件支持,而且为实现虚拟存储器提供了硬件支持

  

 

  

支持多任务,能够快速地进行任务切换和保护任务环境

  

 

  

4

个特权级和完善的特权检查机制,既能实现资源共享又能保证代码和数据的安全和保密

及任务的隔离

  

 

  

支持虚拟

8086

方式,便于执行

8086

程序。

 

1.

虚拟

8086

模式是运行在保护模式中的实模式,

为了在

32

位保护模式下执行纯

16

位程序。

它不是一个真正的

CPU

模式,还属于保护模式。

 

  

 

  

  

 

  

2

.

保护模式同实模式的根本区别是进程内存受保护与否

 

。可寻址空间的区别只是这一原

因的果。

 

  

 

  

实模式将整个物理内存看成分段的区域

,

程序代码和数据位于不同区域,系统程序和用户

程序没有区别对待,而且每一个指针都是指向

"

实在

"

的物理地址。这样一来,用户程序的一

个指针如果指向了系统程序区域或其他用户程序区域,

并改变了值,

那么对于这个被修改的

系统程序或用户程序,

其后果就很可能是灾难性的。

为了克服这种低劣的内存管理方式,

理器厂商开发出保护模式。这样,物理内存地址不能直接被程序访问,

程序内部的地址

(虚

拟地址)要由操作系统转化为物理地址去访问,程序对此一无所知。

 

至此,进程(这时我

们可以称程序为进程了)

有了严格的边界,

任何其他进程根本没有办法访问不属于自己的物

理内存区域,

甚至在自己的虚拟地址范围内也不是可以任意访问的,

因为有一些虚拟区域已

经被放进一些公共系统运行库。这些区域也不能随便修改,若修改就会有

  

SIGSEGV

linux 

  

段错误)

;

非法内存访问对话框(

windows 

  

对话框)。

 

  

 

  

  

 

  

CPU

启动环境为

16

位实模式,之后可以切换到保护模式。但从保护模式无法切换回实模

 

  

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3