最近的工作一直涉及到64位系统,乍一听到64位的时候有些迷茫,不知道是个什么概念,所以花时间对这方面的知识做了一定的了解,以Q-A的形式总结了以下问题:
1、为什么需要64位操作系统?
最简单的原因,每个人的要求都是越来越高的,有更好的东西,当然是受欢迎的。其它的原因:随着多媒体功能的渗入和硬件价格的日趋平民化,越来越多的人加入到PC应用的行列,造就了一大批进行家庭多媒体创作等应用的非专业人士,很多人不再满足于用电脑打字、作表格、上网聊天等简单应用。随着人们对电脑要求越来越高,32位系统已力不从心。
2、64位与32位相比有啥特色?
32位Windows能支持最多4GB的系统内存,每个处理器可最多使用2GB专用内存。 x64 Edition当前支持多达128GB内存,随着硬件功能的增强和内存大小的增加,有可能支持多达16TB(1TB=1000GB)的虚拟内存;使用 64 位的 Windows,应用程序可以将足够多的数据预加载到虚拟内存中,以便 Itanium 处理器快速访问这些数据。这种特性减少了将数据载入虚拟内存,以及查找读取数据并将数据写入数据存储设备所花费的时间,因此可使应用程序运行地更快、更高效。
从个人桌面系统用户的角度来看,内存容量的限制只是体现64位计算技术优势的一个方面,大量数据处理才是64位计算真正发挥功效的地方。PC已经不仅仅是用户计算的工具,它更是“多媒体”中心,很多这方面应用是32位计算根本无法满足的。如在家用领域,32位无法实现高保真的声像,甚至无法完成20分钟视频的播放和编辑;在建筑、游戏设计领域,32位计算无法完成大量的数据计算和处理;在互联网上,32位计算无法实现大量的各种类型的数据搜索——这些应用都需要64位计算来实现。
64位和32位体系结构的比较:
地址空间 64 位 Windows 32 位 Windows
物理内存 128 GB 4 GB
虚拟内存 16 TB 4 GB
页面文件 512 TB 16 TB
页面缓冲池 128 GB 470 MB
非页面缓冲池 128 GB 256 MB
系统缓存 1 TB 1 GB
3、64位的劣势和门槛,32位程序如何在64位上运行?
对目前而言,64位Windows最大的一个劣势就是兼容性,而兼容性方面最突出的就是各种硬件设备的驱动程序。64位和32位Windows XP的硬件驱动程序完全不能混用。一般的软件程序在64位上无问题,但是如果该软件安装时还会向系统中装入驱动程序,则是不行的。所有目前大多的杀毒软件在64位上都是跑不起来的,同理针对64位系统的强势病毒也不多。
那么32位程序如何在64位上运行的呢?
1)重定向技术
为了将32位和64位程序分开,在64位系统上运行的运行的32位程序,有一个被叫做 wow64的模拟器,帮助32位程序模拟运行在64位下。这样的技术叫做重定向技术,设计文 件重定向和注册表重定向
2)文件如何被重定向?
64位的文件系统,%systemroot%/system32 目录和programfiles目录被保留给64位文件使用,而32位文件会被重定向到%systemroot%/SysWOW64目录和programfiles(x86)目录。换句话说,所有的32位程序只会出现在%systemroot%/SysWOW64目录和programfiles(x86)目录。任何32位程序试图访问%systemroot%/system32 和programfiles目录的企图都会被重定向到%systemroot%/SysWOW64目录和programfiles(x86)目录。这个是一个默认的行为,除非程序的线程明确的指名需要关闭这种重定向机制。
3)注册表如何重定向?
64位机器维护两份注册表,一份32位注册表项,一份64位注册表项。64位系统默认的64 位版本注册表编辑器 (Regedit.exe) 可显示 64 位和 32 位的 注册表项。
在 64 位版本的注册表编辑器中,32 位注册表项显示在以下注册表项下:
HKEY_LOCAL_MACHINE"Software"WOW6432Node可以使用 %systemroot%"Syswow64 文件夹中的 32 位版本注册表编辑器查看或编辑 32 位注册表项和项值。
WOW64 使用了一个“注册表反射器”来在 64 位注册表视图和 32 位注册表视图之间镜像某些注册表项和项值。
受反射的注册表项
WOW64 注册表反射器可能会在反射过程中修改注册表项的内容和项值,目的是为了调整路径名等。因此,32 位的内容与 64 位的内容可能会有所不同。下面的注册表项会被反射:
· HKEY_LOCAL_MACHINE"Software"Classes
· HKEY_LOCAL_MACHINE"Software"COM3
· HKEY_LOCAL_MACHINE"Software"Ole
· HKEY_LOCAL_MACHINE"Software"EventSystem
· HKEY_LOCAL_MACHINE"Software"RPC
· HKEY_CLASSES_ROOT
· HKEY_CURRENT_USER"Software"Classes
· HKEY_USERS"*"Software"Classes
· HKEY_USERS"*_Classes
4、64位操作系统在安全性方面有哪些优越性呢?
EVP(Enhanced Virus Protection,增强型病毒防护)是AMD Althlon 64处理器中采用的一种全新的防毒技术,但它只提供硬件支持,这一功能与Windows XP SP2或64位Windows XP的DEP(Date Execution Prevention,数据执行保护)技术相结合。两者结合后将生成一种全新的恶意代码防御机制:将所有内存位置均标记为不可执行——除非该位置已明确包含可执行代码。当有攻击程序企图在不可执行的内存位置中插入代码并执行代码时,这一行为将会被阻止。不难想象,除非得到了用户的允许,不明代码是很难执行的,这能在很大程度上扼制病毒等恶意代码的入侵。
我所感兴趣的问题就整理到这里了,只是一些皮面知识,深入从技术的角度还有很多东西需要学习。再遇到的时候再深入学习。
12.31.2008 by vivilisa