主题:【原创】用Windows Vista能有快感吗? -- Highway
今天火箭又赢了一场,写一篇祝贺一下!
Windows Vista马上就要发布了。微软的Launch Party已经定在这了这个月的感恩节前后。瞧 ,这连包装都准备好了。
当然了,做为普通用户,可能要等到明年一月才能见到Retail version,哈哈,这事儿怪不得我。
我想对于绝大多数的朋友,不写程序,不搞软件,所以对Vista的big impact可能并不在意(就是什么Windows Presentation Foundation啦, Windows Communication Foundation啦, User Account Control啦),大家伙可能最想知道的就是一点,那就是Windows Vista用起来爽不爽,有没有快感?
从最早期的Alpha version我就try过,那时候还叫(Longhorn),到后来的beta1, beta2, RC1, RC2都零零星星的用过一些,另外没事的时候看过一些微软的介绍,这里和大家掰扯掰扯。
Windows Vista用起来是不是爽,是不是有快感,很难一句话说清楚,我只好套句老调“The answer is yes or no”。
决定是不是升级到Vista的第一件事情就是掰开你的计算机的最看看它的牙口。如果是“”如果机器已经超过两岁口了,那最好就别折腾了。
从大数上说,Windows Vista应该比XP要慢。为什么这么说呢,因为Vista比XP胖大了很多。XP一张娇巧的CD就放下了,而Vista非DVD不可,体重增加4倍不止。如果说XP是一个可口可乐瓶,那么Vista就可口可乐桶,相差不可以道理计。胖大了必然笨拙,这是显而易见的事情,无需我多说。(不过呢,大家也不必过分责怪微软,这是业界趋势,概莫能外。想想看买一个破打印机,驱动程序,Utility零零星星的还好几百兆呢,更何况是这么大的操作系统呢)
另外,微软在安全问题上下了不少功夫。这不可避免的对性能要有些影响。比如说,为了解决Buffer overflow的问题,微软在C++的编译器中做了不少更动,使这一问题改善了不少,但是那些Trick是有代价的呦。想一想每一个Fucntion Call增加这么一点点地Overhead,那么反映到OS level,那可能就不是一点点的了。
为了提高系统的稳定性,微软尽可能的把Device Driver往User space推,力求Kernel space里的程序都是微软自己的code,或是经过微软认证的驱动程序。我个人以为,这个做法可能会对性能有一定的影响。因为在Kernel space里,程序可以直接access所有系统resource,不需要所谓的mode switch,而在User space里,对system resource的访问要先切换mode,这多多少少会对性能有负面影响。
当然了,微软是搞操作系统出身的,深知如果用户感觉不爽,那产品是很难卖得快的。为了解决这个“快感”的问题,微软内部专门有一个性能小组“Performance team”,专门琢磨如何提高性能,改善用户感受,哪怕这种感受并不是real的,快感只是perceived。
据微软自己宣称,Vista的整个network stack都是重写的。在TCP/IP协议上有不少tweak(大概是package丢失后,重发的算法比现在的标准算法更加aggressive,在绝大多数情况下,这种“冒险”都是成功的),使得性能提高很明显。在Vista client和Longhorn server的这种最佳组合下,网络部分提高最大,即使只使用Vista client,那么20-40%的提升都是有可能的。他们在实验室demo了这种新的network stack的威力,但用户在日常应用中到底能感受到多少还有待进一步考察。我个人的感受嘛,好像是有些改进。不过呢只是感受而已,没有数据支持。
另外,微软还重新设计了整个Audio driver子系统。据称音质提高不少,并且给高端audio card公司留出发展余地,让他们可以写出更专业化声音子系统。同样的MP3,我在Windows XP, Windows Server 2003和Windows vista都听了听,好像是有些不同。这声音的改善虽然和性能无关,但是给用户的感受却挺重要的,与“爽感”紧密相连。
真正增强性能的东西,我个人认为就是所谓的"SuperFetch"。这一技术呢被应用到了三个方面,就是微软市场部门宣传的
Windows SuperFetch, Windows ReadyBoost,Windows ReadyDrive
看过微软新科牛人(Distinguished Engineer)Michael Fortin的一个Interview,讲的就是SuperFetch,说得很透侧,有兴趣的朋友肯以看看。
抛开市场宣传的噱头不说,就技术上讲,我认为SuperFetch还是很值得一提的。
SuperFetch不是什么新东西,好像Windows 98时候就有这么个技术。那时候叫做Prefetch什么的。在Vista中,微软把这种技术发展到了一个新的水平。用我的话来概括的话,这技术的终极目标就是Beat Disk。这个Beat有两个含义,一是指性能,二是指能耗。
现在的硬盘有几个顽症很难解决,大概说来那就是:
1) 反应迟钝。从接到命令到开始读取数据有相当长的延迟。硬盘其实非常像以前的唱机。要想把“胳膊(arm)”移动到正确的磁道上,然后还要等含有数据的扇区转过来才能读取数据。这个过程是机械移动,时间有几个毫秒。和电子设备的反映速度不可同日而语。
2) 速度慢。硬盘要是连续读取数据的话,性能也还马虎。但问题是很多情况下它是随机读取。跑过来读几个扇区,然后马上就换一个地方再读几个扇区。随机读取的性能和硬盘宣称的理想值相去甚远,据微软专家说,大概只有1MB/s左右。
3) 带宽窄。和内存,CPU一比,硬盘的带宽连个零头都不够。不可避免的成为了系统瓶颈。
4) 可靠性差。硬盘里面尽是机械装置,不管工艺多精湛,都有个寿命问题。所以内存,CPU终身质保的不稀奇,而硬盘质保一般也就是个三年左右。并且硬盘不停的转,怕震动,怕这,怕那,娇气的很。
5) 能耗高。这个能耗问题主要是指在笔记本电脑中。硬盘每分钟4200/5400/7200的转着,有一点读写要求它就不能歇着。所以硬盘现在是笔记本电脑的一个耗电大户。很烦人。
所以微软的“性能小组”的老兄们深知,要想给用户以“爽感”,“快感”,那么首先要突破的地方就是硬盘。他们的做法可以概括为一句话,那就是“坚持一个中心,紧抓两个基本点”
这一个“中心”就是以用户工作特点为中心,量体裁衣,定身打造。两个基本点就是尽可能的将用户的东西载入到内存(RAM)中,尽可能的载入到其他快速读取的介质上,比如说Flash-type的内存。
“一个中心”的背后是一个后台进程,他一眼不眨的关注你的活动(比如爱用什么程序,常读写哪些文件等等),以及计算机的工作情况(比如什么时候memory page out, swap in/out等情况)。它不光眯着小眼色迷迷的监视着你,还拿个小本本偷偷做记录呢。你以及你的计算机情况他可以说是门儿清。这些记录下来的信息将被用来紧抓那两个基本点。
经过一段时间磨合以后,你的行为规范Vista已经很清楚了。于是他会在你没有请求的情况下将你喜欢的那些东西提前载入在内存里。这样当你在使用他们的时候,几乎是弹指力现,爽得很。大家可能注意到了,如果计算机刚刚启动后,你运行一个程序可能要5秒才能启动。但是如果你启动后将它关掉,然后再启动,那么这次大概只用一秒就够了。这就是人们常说的“冷启动”和“热启动”的区别。SuperFetch的目的就是将你的计算机提前预热,给你先活动开。
当然,要想SuperFetch干得好,你要有足够的内存。所以说要想vista跑得快,1GB内存是起点,2GB就游刃有余了。
SuperFetch将文件预先载入内存解决了一般问题,但硬盘耗电问题,启动和休眠速度慢的问题还没有解决。这些问题就交给“两个基本点”来办了。
ReadyDrive就是普通笔记本硬盘再贴一块Flash memory。大小可能是512兆或者是1GB。豪华版可能会2GB甚至是4GB。Flash memory反映快,速度高,耗电省,无机械转动部件,可靠性高。但是价格高,完全取代硬盘还不可取。或以说ReadyDrive是一种折中方案,体现了“好钢用在刀刃上”的思想。用户常用的文件以及系统最重要的文件存放在Flash上,这样系统启动和hibernate都不用惊动硬盘,速度明显提高。用户在使用计算的时候,常用的读写都在flash上进行,硬盘马达都不用开。据微软Vista测试人员说,他们拿着装有ReadyDrive的笔记本去开会,一个报告下来,硬盘只转动一两次。大部分时间都安静的在那里睡觉。这样,电省下来了,硬盘寿命也延长了(大部分时间都不工作嘛)。所以大家如果今后想买笔记本,强烈推荐装备了ReadyDrive的本本。
台式机硬盘耗电不是一个大问题,所以可能暂时不会有太多ReadyDrive。为了达到类似的效果,微软可以让你插入USB的Flash Driver来达到提高性能的目的。这就是所谓的ReadyBoost。不过呢,具体的效果可能和宣传的有差距。原因是因为USB速度本来就不快,另外大家图便宜买来的Flash Driver速度也不会怎么着。和ReadyDrive不同的是,USB driver可能随时会被拔掉。所以它只能当作为“write-through”类缓存,硬盘上还得写一份。为了防止USB Driver被拔掉后造成数据泄露问题,上面的文件都是加密的。所以这么折腾几下,我认为具体性能提升一定会很有限。
微软说他们正在和主板厂商协商,准本让他们把Flash内存固化在主板上,以PCI-E的方式传输数据。这样下来速度提升就非常明显。这样的主板就可以贴上一个Vista Premium motherboard的标记,算是微软的奖励吧。有趣的是Intel看着这事儿有戏,决定在他的芯片集的北桥中集成512MB或是1GB的 Flash memory。乖乖,那可以更爽了耶。
好了,零零总总说了这么多,就先到这儿吧。对我现在用的这个5744 RC2版本 我个人认为还可以。不过问题也不少,比若说DVD回访不怎么地,切换到全屏幕忽忽乱抖,photo Galley看图片有些问题,很多程序运行不稳定,比若说Eclipse,而NetBeans根本就不能安装,Wireless连接也有些glitch。个人感觉最新鲜的嘛,就是这个麻将小程序。用佟掌柜的话来说,就是“美的很”,哈哈。。。
- 相关回复 上下关系8
😉【原创】用Windows Vista能有快感吗?
🙂庞然大物啊~~~ 燕归来 字102 2006-11-24 08:21:17
🙂如果不追新的话,更换vista还是要在sp1以后 lowtemplar 字165 2006-11-11 11:35:49
🙂network stack都是重写的??? 大大的熊 字265 2006-11-09 14:26:34
🙂基本的TCP/IP标准还是要遵循的 丁丁鱼 字179 2006-11-09 18:51:05
🙂变种是不少。。。LINUX最近又加了不少。。。 大大的熊 字97 2006-11-09 20:30:48
🙂vista 好像linux 2 烧焦的火凤凰 字446 2006-11-09 12:39:19
🙂flash的读写寿命问题 大大的熊 字87 2006-11-09 14:29:07