首页 > 代码库 > 操作系统开发的乐趣
操作系统开发的乐趣
为什么要开发底层操作系统?下文译至一个日本人写的文章。挺有意思的。
-----------------------------------------------------------------------
对独立进行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非常花时间。也早就知道这很傻。但是,确实「寿司还是金枪鱼的腹部最味美」。当你领教了它的魅力后,就已经不能满足于加利福尼亚卷了。
译至:http://d.hatena.ne.jp/kohtani/20070403/p1