回帖:应用程序的需要。这一结构规范了应用程序对内存的使用,避免了内存冲突。
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)时,会出现“添加/删除程序”对话框“假死”的现象,表现为无法对此对话框做任何操作,但在任务管理器中既不会出现该进程“没有响应”的提示,也无法终止该进程,最奇怪的是此时系统可以正常运行,所有程序也能照常使用,只要你不介意那个无法关闭的对话框,就是用上一天电脑也没关系。