如果说自由软件的出现是一个偶然的话,那么,席卷全球的Linux热潮则是一个奇迹,他正以势不可挡的趋势迅猛发展,其前途不可限量。
Linux内核源代码的开放给希望深入操作系统内部世界的人们提供了可能,但随之而来的问题是,当我们要开发自己的操作系统时,由谁来读系统的kernel部分呢。对这部分的处理从逻辑上分析不外忽三种方式:全部保留,对其进行裁减,全部推倒重来,很显然,最后一种方法是不可能的,而如果我们采用的是第一种方法,其结果当然一定可以满足我们的要求,但是,最后编译出来的核心将十分的庞大,尤其是对嵌入式操作系统的开发者来说,是不能忍受的,所以,大多数开发者采用的第二条路。
但是,第二条路也非平坦的大道,道理很简单,你要想对kernel进行裁减,首先你应该将全部的源代码阅读一遍,并且将其中的相关性理顺,然后才能谈到裁减,所以工作量也十分的庞大。
然而,OSKit的出现改变了这一切,它使得我们不需要将精力集中在kernel源代码的阅读上,因为kernel部分的源程序已经由OSKit的开发人员替你分析过了,他们将源码全部模块化,并将所有模块之间的相关性写在了文档之中,呈现在你的面前,这与你自己分析源代码的结果是一样的。
OSKit最本质的东西和Linux一样,体现在"自由"和"开放"的思想,"自由"意味着世界范围内的知识共享,由于OSKit出现在Linux之后,其设计思想继承了Linux的精髓,所以说它的出现并不完全是美国犹它大学计算机科学系FLUX研究组的功劳,而应该是"自由"的结果。"开放"则意味着OSKit对所有的人都敞开大门,在这种开放而自由的天地里,你可以中分发挥自己的创造才能。
在后面的几章里,我将向大家系统地介绍我的全部研究成果-OSKit的COM机制及初始化过程,希望读者能在最短的时间内了解OSKit,更希望大家能本着"自由"与"开放"的精神加入到我们的研究中来,为中国的自由软件事业贡献自己的一份热情。
由于本人能力有限,论文中的有些术语表达可能不妥,内容也可能不够准确,敬请各位老师和同学批评指正,本人不胜感激。
这篇论文主要论述了四部分内容:
第一部分:OSKit简介
第二部分:COM规范介绍
第三部分:OSKit中COM机制的实现
第四部分:OSKit的启动及初始化过程
洪宁 2000年6月19日