计算机的本质,是提供运算能力的机器。
人们编写各种各样的程序,在机器上运行,于是产生了各种各样的应用。
为了更方便的编写应用,让应用程序的开发门槛降低,我们迫切的需要一种中间层来隔离硬件,于是操作系统出现了。

有趣的是,几十年间,操作系统这个名词虽然存在,但其形式和概念已经发生了翻天覆地的变化。30年前,无法想象会出现现在的windows或是linux这样的操作系统。要知道,最初的所谓操作系统只不过是一个时钟调度(可以看作批处理)的简单程序而已。

这种变化来源于几个方面,一方面是计算能力的提高(内存越来越大,CPU越来越快),允许我们在计算机上赋予更多的内容,开发更复杂的应用,另一方面来源于硬件种类越来越多。

与其说是计算机需要操作系统,不如说应用程序需要操作系统。现代操作系统不是在一夜之间产生的,而是随着历史的发展,缓慢的形成的。简单说来,计算机的本质是应用,操作系统只是提供了应用的运行环境。

java芯片是一个非常有趣的东西,在这个芯片上,可以直接运行java的字节码,这种芯片不在需要一个强大的操作系统来管理硬件资源了。其本身就提供了java运行环境。(事实上,如果你的汇编足够强,那么就可以直接在任何芯片的计算机上直接编写应用程序–就像在单片机上作的那样–而不需要任何操作系统的支持,只不过,这比较麻烦而已。)

java的创举不是创造了虚拟机,事实上虚拟机的概念从smalltalk就存在了。java的创举是将虚拟机放到了不同的层次,在操作系统之上的层面,有jre环境,在操作系统之下的层面,有java芯片。对于不同的操作系统,有不同的jre。

未来的运行环境是什么呢?在大型机的年代,只有主机上上有真正操作系统,客户机只不过是登陆上去,使用主机的资源而已。技术历史不过是一个绕圈子的过程,一圈绕回来,上了一个台阶,但是本质在相当长的一段时间内,仍然是不变的。

有感而发,无意争论。


14条评论

  1. 租房攻略还得过几天,买房还没写完呢…挖了n多大坑啊。。。

  2. 恩,未来,是回归的

  3. 俺也有感,感觉说不清`

    “操作系统只是提供了应用的运行环境。”

    可有些人非要认为管理硬件,跟硬件打交道那才是操作系统。

    操作系统其实没这些义务。

  4. 既然是对牛弹琴,就不要管牛的反应了

    昨天liutao跟我说的,我觉得很有道理

  5. 原来是这样。

    租房攻略呢?

  6. OS就是人和机器/机器和机器的通信界面,最终目的是让人使用机器.至于分时系统,API,RPC等,无非是根据人/程序的需要而采取的不同解决方案.

    如果把分时系统/API/RPC当作是OS的本质,就是本末倒置了.

  7. 对啊。还不就是如此。

  8. 我是这样表达的这个意思:我们迫切的需要一种中间层来隔离硬件,于是操作系统出现了。

  9. Sun十多年前就搞了个JavaOS,折了。原因嘛,大概是缺少独裁政府的支持,嘿嘿。

  10. 我们往往忽略一个非常重要的因素,就是这种Copy的方式是在复制一个“已经”成功或者说已有成熟用户群的服务/应用。这些成为“案例”的网络应用其本身已经进入一个良性和正向的发展轨迹,无论从规模到技术积累都达到了一定标准。但是最为一个由零开始的新应用,我们需要学习和拷贝的不是这些现在已经成功的样子和模式,而是这些经典的Web2.0应用成功的过程。更应该去学习和了解Myspace,Flickr是怎么由零到一千个用户,到一万个用户,再到十万个用户。这段过程才是最值得我们去研究和摸索的发展规律。阿北称这个过程是一个“企业的Growth”的过程,很准确。这个过程是一个鲜活的,动态的,不断变化的,就像一颗需要去培养和生长的树苗,需要园丁去不断的呵护,浇水,施肥。而整个阶段对于创业者又是一个经验积累和学习的宝贵阶段,是一个Learning…

  11. sun的东西没推广好,有几个原因:

    1 就是一帮科学家,不会做市场。

    2 那时候还不需要这玩艺。

    3 那时候硬件性能不够。

  12. virushuo 发表于2006-03-24 8:31 AM IP: 61.51.146.*

    sun的东西没推广好,有几个原因:

    1 就是一帮科学家,不会做市场。

    2 那时候还不需要这玩艺。

    3 那时候硬件性能不够。

    ———————————

    这个你还真错了,JavaOS两张软盘,直接把硬件支持塞进Java Platform,图形界面,一运行直接出来浏览器,看起来一切都挺美好。

    只是有一个问题,他只支持指定的硬件,包括指定的芯片组,指定的显卡,甚至是指定尺寸之内的硬盘。如果你想让你的DIY机器跑得好一点,很抱歉,SUN未提供相应的硬件支持。

    当然你可能想到也许可以自己抄家伙写点什么,很抱歉,纯洁的一个缝都没有的JavaOS也没地方让你塞进一个驱动去。

    所以归根结底的原因是,这些理所当然知道该怎么去做操作系统Sun的科学家,以为单机版的操作系统就可以偷工减料,结果只不过再一次证明了麻雀虽小五脏俱全。

    最后的结果就是Solaris依然叫OS,Java依然叫Platform,JavaOS废掉了。

  13. test

发表评论

评论也有版权!

无觅相关文章插件