对于一个忙碌的工厂,有时候我们会有一种感觉,仿佛所有的工作都按一定的音乐节拍运行;而计算机中的电子器件,也是在“音乐节拍”的指挥下,一拍一拍地完成自己的规定动作。
这个“音乐节拍”在计算机中的术语叫做时钟频率。
其实,所有的电子元器件,远没有我们想象中那样聪明,它们只会在系统的时钟频率下,一个节拍一个节拍运行。
比如,我们认为最强的电子器件:CPU,也只不过是在一定的时钟节拍下,按规律运行。我们可以想象:第一个节拍来了,它从内存中调入一条指令;第二个节拍来了,它翻译解释这条指令;第三个节拍来了,它执行这条指令……
CPU就这样一条一条地执行指令(程序),这些构成了它全部工作的内容。而给他设计指令(程序)的人类,才是真正聪明的。
CPU一个节拍一个节拍地工作,好像很笨很慢的样子,实际上,CP[J时钟频率的参数是MHz,也就是说,一秒钟提供100万个节拍。现在的主流计算机,CPU的频率至少是1GHz。也就是说:每一秒钟,提供10亿个节拍。大家想想,这样每秒钟可以执行多少条指令啊!所以,计算机同时运行3、4个程序,我们根本感觉不到不同时间片执行不同的程序。鉴于以上分析,可以说,在执行指令的架构不变的情况下,CPU的主要技术参数就是时钟频率,其值越高,理论上每秒执行的指令数就越多,CPU性能就越好。
在做体操的时候,人按时间节奏每秒最多能完成十几个动作。和计算机比起来,人的“节拍”真是太慢了。人类的伟大之处或许就在这里,即总能发明一些可以超越自己的工具来弥补自己的不足。我们的大脑有想象力,也许,这就是我们和计算机的最大区别。
1.2 得标准者得天下
兼容性原理,简单来说就是:从奧托到奧迪,不管是什么样的汽车,一定要兼容我们驾驶汽车的习惯。
计算机中最简单的案例就是键盘,QWERT…字母的排列方式,从我们敲击键盘合理频率角度来看,未必是最科学的,也未必对我们手腕健康最有利,但是一开始,键盘是就这个样子。你可以生产自认为更科学的键盘,但肯定卖不出去。
计算机系统也是这样,当年,IBMPC发明的时候,IBM选中了Intel8086系列作为CPI了,PC上众多的软件就开始使用了被称为“x86”系列的指令集,Intel自己开发出了80386、80486、Pentium系列CPU,AMD等公司开发了Althon等CPU,这些CPU,都要兼容这些软件,并且100%兼容最初的x86指令集。
为了要兼容它,于是就产生了x86指令集标准。也许这个标准不是最好的,但是这已经成为一种事实标准,很难受到挑战.比如,我们想挑战纸张的标准,使用一种更符合中国人阅读的纸型,但是选用特殊的纸型,生产成本太高,独家使用成本更高,很难得到普及。所以,人们总是尽量在标准纸型中选择自己需要的。同样道理,成千上万的软件采用x86指令集,这些软件的价值造就了x86指令集的价值。20多年来,很多公司,很多优秀的计算机科学专家,想挑战这个标准,他们提出了很多更科学、更有效的指令集,但是都没有一个新的标准,能像x86指令集这样被人们广泛应用。
展开