为什么要开发底层操作系统?下文译至一个日本人写的文章。挺有意思的。
-----------------------------------------------------------------------
对独立进行OS开发的人来说,常常会听到这种意见:
「自己开发OS不是傻B吗?」
靠・・・。这就像在碰到住在加利福尼亚的老美说:「寿司还是加利福尼亚卷的最好啊。」就认为不爽。由于,OS开发是程序开发中特别有意思的。我想问:「你小子真是知道才这么说的吗?」
那么,OS开发究竟是为什么这么有趣吗?试着总结了一下个人的意见。
1)自己就是创造世界的上帝的那种真正的乐趣
OS的设计者就是上帝。
从什么都没有的状态開始。一点点的创造世界。
不久按自己想法描绘的世界没变成了现实。
正是"make world"。这不须要材料也不须要道具。甚至不须要电脑。有纸和铅笔,或是只在你的脑海里,也能创造OS这个自己的世界。
2)完毕系统后的驾驭感
比如按一下键盘的键。
那一瞬间,键盘的中断,内核,调度器,SHELL, 输出到画面,全部的代码都在脑海里跑了一遍。全部的这一切都做为自己创造的结果被得到。和这个系统融为一体的感觉和驾驭的感觉,这是其它的编程是体会不到的。
3)技术的难度和可能性
OS的研究在非常久前就觉得要结束了,可是并不是如此。
因为须要支持不断更新的硬件和多种环境、OS也不断的在进步。
OS的技术非常的深奥。还有非常多可能的技术没有被发掘。对OS的研究决不能满足。
4)软件设计的自由
内核处在用户的要求和硬件的制约之间,各种各样的设计制约非常多。
可是,转换一下视角。内核也能够说是不受其它软件的一切干涉。
那就是说,能够不被别人的软件设计制约对内核进行自由的设计。怎么去做全然是由自己决定。
5)硬件编程的魅力
对硬件进行编程。有特别的难点。不按规格说的运行。时序和顺序的问题,訪问硬件须要非常怪的方法等等。这些麻烦的处理。如自己所想的那样能控制时,这样的成就感是难以言表的。
6)接触到人类智慧的喜悦
自己写OS的时候,就是感受到世界上也有和自己为一样的问题苦恼。然后加以解决的很多优秀的人才。这或许是OS的领域相对来说,研究的历史比較早的缘故。自己开发OS的场合。跟只读一些代码进行研究的场合相比,别人的内核代码能早10倍理解。享受100倍的乐趣。
确实由于兴趣去开发OS非常花时间。
也早就知道这非常傻。可是,确实「寿司还是金枪鱼的腹部最味美」。
当你领教了它的魅力后,就已经不能满足于加利福尼亚卷了。