当人们在比较32位的Windows [url=http://www.pconline.com.cn/pcedu/softnews/yejie/0802/1225449.html][color=#3366cc]Vista[/color][/url]与64位Vista的时候总是将注意力集中在系统内存的问题上。也许这是因为,64位的Vista的地址空间不再受限于4GB,它允许用户最多可扩容至128GB。但同时,支持大容量内存也带来了一些安全问题。64位版本的Vista提供补丁保护(内核补丁保护)、地址空间布局随机化(ASLR)、堆栈随机化及对堆栈损坏保护等多种保护功能。
大家关注的基于堆[url=http://www.pconline.com.cn/pcedu/softnews/bingdu/0801/1205512.html][color=#3366cc]缓冲区溢出[/color][/url]问题,虽然32位和64位的Vista都提供保护,但只有64位版本的操作系统在默认状态下提供堆栈损坏保护。微软高级程序安全经理Michael Howard解释说,在32位的Vista系统中,软件[url=http://www.pconline.com.cn/pcedu/empolder/index.html][color=#3366cc]开发[/color][/url]者为了增强堆栈损坏保护功能,只得调用HeapSetInformation 接口。而相比较而言,64位的Vista不仅默认就检测基于堆的缓冲区溢出,而且还将提供与堆栈相关的非法操作的保护功能。
[table=98%][tr][td][/td][/tr][/table]