如果說自由軟件的出現是一個偶然的話,那麼,席卷全球的Linux熱潮則是一個奇跡,它正以勢不可擋的趨勢迅猛發展,其前途不可限量。
Linux內核源代碼的開放給希望深入操作系統內部世界的人們提供了可能,但隨之而來的問題是,當我們要開發自己的操作系統時,由誰來讀系統的kernel部分呢。對這部分的處理從邏輯上分析不外乎三種方式:全部保留、對其進行裁減、全部推倒重來。很顯然,最後一種方法是不可能的,而如果我們采用的是第一種方法,其結果當然一定可以滿足我們的要求,但是,最後編譯出來的核心將十分的龐大,尤其是對嵌入式操作系統的開發者來說,是不能忍受的,所以,大多數開發者采用的第二條路。
但是,第二條路也非平坦的大道,道理很簡單,你要想對kernel進行裁減,首先你應該將全部的源代碼閱讀一遍,並且將其中的相關性理順,然後才能談到裁減,所以工作量也十分的龐大。
然而,OSKit的出現改變了這一切,它使得我們不需要將精力集中在kernel源代碼的閱讀上,因為kernel部分的源程序已經由OSKit的開發人員替你分析過了,他們將源碼全部模塊化,並將所有模塊之間的相關性寫在了文檔之中,呈現在你的面前,這與你自己分析源代碼的結果是一樣的。
OSKit最本質的東西和Linux一樣,體現在"自由"和"開放"的思想,"自由"意味著世界范圍內的知識共享,由於OSKit出現在Linux之後,其設計思想繼承了Linux的精髓,所以說它的出現並不完全是美國猶它大學計算機科學系FLUX研究組的功勞,而應該是"自由"的結果。"開放"則意味著OSKit對所有的人都敞開大門,在這種開放而自由的天地裡,你可以中分發揮自己的創造才能。
在後面的幾章裡,我將向大家系統地介紹我的全部研究成果-OSKit的線程機制,希望讀者能在最短的時間內了解OSKit,更希望大家能本著"自由"與"開放"的精神加入到我們的研究中來,為中國的自由軟件事業貢獻自己的一份熱情。
我寫這篇論文力求達到一個目的,那就是讓這篇論文在搞研究的人眼裡是一本參考書,而在程序設計者眼中是一本函數手冊,既有理論指導,又不是泛泛的空談理論。
由於本人能力有限,論文中的有些術語表達可能不妥,內容也可能不夠准確,敬請各位老師和同學批評指正,本人不勝感激。
湯海京 2000年6月14日