日期:2014-05-17  浏览次数:20801 次

Windows XP的小秘密 {10}

Windows XP的小秘密 {10}
2011年06月03日
  为了能够尽量照顾更多的用户,我们还做了两项基础测试:
  1.从Windows Me升级到Windows XP,升级过程很顺利,稳定性很好。
  2.多系统共存:此项测试不是针对共存的各个系统自身稳定性,而是看各个系统是否能正常引导。测试结果表明这和各个系统的安装顺序有关。先装Windows XP,后装Windows 98/Me,没有问题,但安装Windows 2000后,Windows XP不能正常引导;如果顺序为Windows 98/2000/XP,则所有系统可以和平共处。
  出现问题的应用软件举例:
  1.升级安装Windows XP以后,原来安装的Office XP在第一次运行时会出现设置向导,此时需要放入Office XP安装盘引导一下才能正常使用Office组件,以后运行正常。
  2.超级解霸2001XP在升级到Windows XP以后,必须重新安装才能使用。
  3.Partition Magic 7.0安装时会自动识别OS并装上对应的版本,因此,升级到Windows XP后必须重装才能运行。
  4.NJWin(南极星)和MagicWin 98 1.3f(05/01) 能正常运行,但内码转换功能失效。
  5.Norton Utilities 2002中所有组件升级到XP后都无法运行,执行时系统提示必须重装,其中SpeedDisk和Wipeinfo被自动禁用。
  出现问题的游戏软件举例:
  1.《新仙剑奇侠传》,桌面分辨率为1024×768,在Windows XP下运行退出后,出现任务条位置错位。
  2.《美少女梦工厂Ⅲ》运行后不能进行任何设置,包括起名,设置系统等。
  3.Half-life(蓝色沸点、反恐精英两个任务版),使用Open-GL加速正常;如果用DirectX模式,游戏中按“Esc”调用设置菜单时黑屏,但可返回游戏画面。Win98+DX8.1下没有这个问题。
  4.NBA2001在WinXP下不能启动。
  5.Quake(一代)无法运行,启用Win9x兼容模式无效(Win98下可以运行)。
  6.星球大战(Rogue Squadrom)在PC3上进入游戏场景后退出,更换G200显卡后正常。
  7.Max Payne在PC3上i752用WinXP自带驱动,主界面和游戏中环境贴图空白。更换Intel公版驱动后正常。
  不一样的硬件体验 Windows XP采用的稳定性技术
  Windows XP为什么被称为“迄今为止最优秀的操作系统”?它应用了那些技术来保证其承诺的稳定性呢?
  首先它是基于新型Windows引擎,Windows XP基于Windows/NT/2000成熟的代码库,它使用32位计算体系结构和一个完全保护的内存模型。它将执行代码分为以下两种,用户模式:用户模式中的软件在没有特权的状态下运行,对系统资源只有有限的访问权限,Windows NT基础的应用程序和被保护的子系统在用户模式下运行在自己的空间内,不会互相干涉;核心模式:软件可以访问所有的系统资源,例如计算机硬件和敏感的系统数据。核心模式中的软件构成了操作系统的核心,它们分为如下几组:执行体,包含为环境子系统和其他执行体组件提供系统服务的系统组件,它们执行的系统任务包括输入/输出、文件管理、虚拟内存管理、资源管理以及进程内部通信等。设备驱动程序,将组件的调用翻译为硬件操作。硬件抽象层,将执行体的其它部分与特定硬件分离开来,使操作系统与多处理器平台相兼容。微内核管理微处理器,它执行一些重要的功能,如调度、中断以及多处理器同步等。这种将硬件与软件隔离的做法虽然可能对性能造成一定影响,但有效地保护了系统内核。
  其次它通过虚拟内存管理器来管理虚拟内存和物理内存。简单地解释这一结构就是:Windows XP为每个应用程序分配唯一的虚拟地址,并将虚拟内存映射到物理内存上。当没有足够的物理内存时,虚拟内存管理器将不使用的页面交换到临时页面文件(Pagefile.sys)上,释放物理内存以便满足应用程序的需要。这一结构规范了应用程序对内存的使用,避免了内存冲突。
  Windows XP还提供了核心模式写保护。为了保护操作系统中的每一部分不会受其它部分的错误的影响,Windows XP在内核部分和设备驱动程序中添加了写保护和只读部分。物理内存映射标志出包含代码的内存页面,保证它们不能够被覆盖,即使是操作系统也不能,这样就阻止了核心模式软件破坏了其他核心模式软件。这些特性在缺省情况下是激活的,当然如果用户愿意也可以关闭这些特性。在这样的保护下,应用程序不会破坏重要的内核数据结构,所有的设备驱动程序代码都是只读并且页保护,恶意的应用程序将不能有意影响核心操作系统区域。
  Windows XP还应用了许多机制以保证系统的稳定。如设备驱动程序检验器可以给设备驱动程序提供功能更强的负载测试。经过Windows XP测试的设备驱动程序将会是最健壮的驱动程序,它可以保证系统最大的稳定性。在Windows 2000基础上改进而成的并行Dll支持提供安装多个不同Windows组件版本的机制,并且可以并行运行。这可以让使用一种系统组件版本编写和测试的应用程序在使用不同组件版本的情况下继续使用原来的版本,这样就可以解决“Dll Hell”问题。还有我们在正文中详细阐述的Windows文件保护,保护核心代码不被安装的应用程序覆盖。如果文件被覆盖了,Windows文件保护可以还原以前正确的版本。通过保护系统文件,Windows XP预防了早期Windows版本中出现的最常见的系统失败错误。其它诸如系统还原、增强的防病毒等系统软件功能也提供了有力的保障。
  关于崩溃
  在正常操作的情况下,我们没有遇到过系统崩溃的情况,即使大量安装软件或更换硬件系统也依旧稳定;我们在由Windows 2000升级到XP的系统上则遇到了一些问题:即更换主板或多次更换其它硬件时系统无法启动,在更换主板的情况下只要换回原件Windows XP就恢复正常了,但如果更换硬件达到一定数目就只能重装了;极限测试时,如果想在XP下靠删除系统文件使它崩溃十分困难,因为Windows XP对重要的系统文件及目录都有保护,只有在DOS下删除系统文件才能使Windows XP无法启动。
  关于死机
  由于Windows XP秉承了NT核心良好的内存管理机制并有所发扬,所以死机的可能也被降到最低。系统中的每个进程都相对独立,理论上一个进程停止响应后并不会影响到其它进程,更不会影响到系统进程,在实际测试中也基本上是这样。具体的死机现象有这样几种:在关闭某些如“InCD”之类对XP支持不好的软件时就会出现蓝屏死机,瞬间之后就重启了,不过并非每次都会这样;在Windows XP下输入法存在一些问题,切换输入法有时会出现造成Word、EmEditor等编辑器当掉的情况;测试过程中出现过两次鼠标失灵的情况,但其它程序没有问题,经验证明鼠标并没有故障,看来这是Windows XP的一个BUG;另一个比较奇怪的BUG就是当我们卸载个别应用程序(比如Delphi6)时,会出现“添加/删除程序”对话框“假死”的现象,表现为无法对此对话框做任何操作,但在任务管理器中既不会出现该进程“没有响应”的提示,也无法终止该进程,最奇怪的是此时系统可以正常运行,所有程序也能照常使用,只要你不介意那个无法关闭的对话框,就是用上一天电脑也没关系。
  结语
  一直在使用Windows 98的朋友对死机和崩溃一定已经司空见惯了,当系统里装了很多软件或是同时运行几个程序时,经常就会跳出一个对话框告诉用户产生非法操作,或是干脆没有响应;当你要卸载什么程序或是添加什么新硬件时,则要有系统崩溃的心理准备。但是现在,对于使用NT核心技术的XP而言,这种情况已经有了很大的改观。
  总的来说,虽然Windows XP不能完全避免死机和崩溃现象,但比起微软以往的系统还是有了长足的进步,基本上能令人满意。
  从上述内容可以看出,Windows XP在稳定性方面比起以往的版本有了很大的进步,即插即用功能及硬件的兼容性也得到了相应加强,有不少古董级的硬件都能正常工作。Windows XP在极限测试中的表现也令人比较满意,基本可以避免误操作带来的灾难,可是对于恶意破坏就无能为力了。另外,Windows XP的系统还原功能在系统仍然可以进入安全模式的情况下一般可以解决问题,过程也不算复杂,只是此功能会占用大量的硬盘空间,这一点还不是很理想。绝大部分软件和游戏也能正常使用,只是大型3D游戏的运行速度比Windows 98稍慢,看来同样是基于NT技术的Windows XP已经基本上摆脱了兼容性的困扰。其实无论是在易用性、兼容性还是娱乐性方面,微软所做的这些努力都表明了它要将操作系统全面转向NT核心的意图。所以此次微软对Windows XP寄予了厚望,从使用者的角度来看,Windows XP已经在稳定性及兼容性之间找到了一个较好的平衡点,它既不会像Win