从1到2比较难,从2到n就要容易得多

如果我们一开始就开发多用户的操作系统,就不用在DOS上浪费那么多时间
如果我们一开始就开发多核CPU,就不会在因为多核问题而重新做设计
如果我们一开始就考虑分布式的数据库,就不会因为要把数据存储在多台计算机上而发愁。
但我们总是从1开始,因为从1开始总是比较简单的,容易完成的。当增长到一定规模进,碰到了瓶颈,于是开始构想“多”,可这时往往变得困难重重。原来的许多设计都是基于“1”的。
如果一开始的设计就是基于“2”的,那么从2到n就要容易许多。
这里有一个例子,xwindow 一开始就是基于2的,将客户端与服务器分离,但是一开始比不上基于“1”的windows的GUI。
一开始基于“1”进行设计,基本上是顺理成章的,执行效率也高。但无一例外地会遇到资源瓶颈。单个的系统资源总是有限,发展到一定程序,一定要处理多个系统的协作。

通迅协议是协调多个系统的基础设施,但在基于“1”的设计中,很难在一开始就考虑通讯协议,因为这会带来在当时看来不必要的成本与复杂性。但事后的补救往往成本更高。但这是由人的局限性导致的必然。在发展的道路上,不可能有太多的前瞻性,只能走一步算一步。

为什么不在一开始就考虑好呢?其实这是不可能的,因为没有1就不会有2,正是因为1的出现,才会导致2的因难。这就像城市中路与车的问题。为什么不一开始就修个16车道呢?只有先修了1个车道才会慢慢地有车,车多了才会发觉路不够用,才会需要更宽的车道。而道路的两旁早就发展了各种建筑,要扩宽道路才会是一个大难题。

如果没有单核的CPU的使用,多核CPU的需求就不会产生。如果没有单机操作系统的使用,多台计算机联网的需求就不会产生。人们只能先做基于1的设计,当发展规模遇到瓶颈了再想办法补救,只能如此。

如果眼光稍微超前一点,尽可能早地开始基于2的设计,后期的返工成本就会小得多。如果所有的事情都可以预测,那就没有后来居上这回事了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值