中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 综合其他 > 规范资料
Title:ProtectedModeMemory保护模式下的内存
作者:gsnet 时间:2002-01-04 11:58 出处:互联网 责编:chinaitpower
              摘要:Title:ProtectedModeMemory保护模式下的内存

*************Title: Protected Mode Memory**************
*************** 标题:保护模式下的内存*****************
*=================译自Tutor by Hutch==================*
*====Original:Collected and packed by dREAMtHEATER====*
*======翻译:小桥 from QDU huasoft@163.com============*
*==================20020820 at home===================*
*******************************************************

保护模式下的内存(Protected Mode Memory)


在像DOS一样的实模式操作系统中,可以覆写操作系统的代码段。如果程序没有正确的写入,而这有可能搞跨整个操作系统,计算机只有重新启动才能运行。

如果你正在写这样一个程序:直接写CGA图形内存区域,程序开始于B800H,而代码中出现了循环错误,它将覆写整个区域直到DOS所能及的最大的地址范围。这将覆写一切并包括内存中的BIOS设置。

保护模式下的内存被设计为预防这种类似事情发生。一种保护模式下的内存管理器控制着应用程序所写的地址范围,如果此应用程序继续尝试写那些非自已应写的地址时,管理器将终止此应用程序。

这种内存管理方式在16位的Windows中是可用的,但是因为16位的Windows仿真多任务,它在错误的程序垮掉之前,可以覆写其它应用程序的内存区域,或者是操作系统。

依赖于在操作系统中的覆写的内容,一些其它的没有错误的程序可以调用操作系统函数,无论是程序还是操作系统都会垮掉。更常见的是你接收到“蓝屏之死”,它至少告诉你一点信息;但如果写了很多代码产生了太大的混乱,你接收到“黑屏之死”,一个直接的黑屏锁住了机器,什么也没有告诉你。

硬件的改进以及基于硬件的32位多任务使得保护模式下的内存管理更加可信。在保护模式的操作系统下写代码的基础是:只是读和写你的应用程序所被准许的内存。

因为编译器允许你读和写几乎任何地址范围,你需要注意你可以读写的内存范围。如果你分配10K缓冲但你尝试读20K时,地址越过了10K缓冲区之后,你将得到一个内存页读错误(page read fault)。如果你在寄存器中不正确的废弃了一个变量
并且尝试读写那个地址,你也会遇到麻烦,因为你超越了地址的范围。

页读写错误是“异常”(exceptions),这是从操作系统到应用程序传递时引起的错误,如果异常没被应用程序所把握,操作系统将关闭程序。这提供了一些保护应用程序远离地址范围错误的方法。

在多任务操作系统中,当多道程序运行时,如果这种的保护不可用,那么一个程序可能覆写另一个正运行程序的内存,这可以使另外运行中的程序垮掉。同样的问题也会发生在操作系统的代码中:一个程序覆写操作系统的代码将垮掉操作系统。
==============================================

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有