歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> [Linux教程]關於Linux操作系統的理論基礎學習

[Linux教程]關於Linux操作系統的理論基礎學習

日期:2017/2/28 17:49:38   编辑:Linux教程
操作系統的理論牽涉的幾個方面,每一方面都很深奧.我大致先說說我個人在大方向上的看法:
1.作為一個現代的OS應該是基於微內核結構的,微內核機構把OS最基本的功能放入內核中,這使內核的代碼簡潔,受保護的內核將使OS更穩定,,另外將一些OS功能放在內核之外,使得定制OS成為可能,可以根據需要組合不同的功能模塊,比如:對一個客戶終端來說,文件系統應該在服務器端,它本身不需要文件系統,對一些固定功能的終端來說,甚至圖形界面都是多余的.
2.OS應是基於客戶端的,我們不是開發一個高性能'並行的服務器OS,有LINUX就夠了.我們的OS是靈巧的,小的.和WINDOWS相反,我們的OS啟動迅速,身軀小巧,運行穩定,安全.
3.OS是多層結構的客戶端,目前PC上的許多功能應該移到應用服務器
3。以某種操作系統為基礎,做一些試驗,比如把MINIX的文件系統去掉,把它作為客戶OS掛在LINUX端。
見解一:
我認為沒有那一個操作系統能滿足所有用戶的要求,大企業用戶,小企業 用戶,家庭用戶的要求各不相同,將來不可能只存在一種操作系統,無論是WINDOWS,還是UNIX,LINUX都無法一統天下.那麼目前缺少那一種OS呢?我個人認為隨著計算機產業的發展,PC變得越來越強大,以至於常常被作為服務器來使用,而作為客戶端使用的機器是用不著這麼強大的,實際上PC復雜的功能,反而使許多用戶無所適從.WINDOWS就是一個典型的例子,在它作為一個業務終端時,由於它龐大的身軀,啟動緩慢,管理復雜,對硬件要求高等等.注定了它不適合作為一個業務終端,有意思的是,它卻是用的最廣的業務終端OS,這只能說明能替代它的OS還沒有出現,SUN的JAVA OS,CITRIX的WINDOWS終端,以及NC都是一種可能,但離成熟還很遠.目前,是我們開發這種OS的好機會。盡管我們中國的技術儲備還不夠。但只要發揚我們中國人的鑽研精神,我們是有機會的。我建議開發這樣一個OS,它有如下特征:
1。建立在x86芯片上。
2。內核簡潔,短小,是rtos.
3.有與眾不同的圖形界面系統,耗用的系統資源少。
4。具有良好的可伸縮性,既可以作為嵌入式OS也可以作為網絡終端OS。
5。在SERVER端有豐富的程序,可以和LINUX,UNIX組成多層體系系統,應用邏輯在應用服務器上運行,本機只完成業務程序的顯示和一些簡單的邏輯。
見解二:
 我個人認為開發一個新的OS有幾個好處:
1。作為一個中國的電腦愛好者,自己開發的操作系統顯然從頭到尾都是支持中文的,如果真的成功的話,那麼對廣大的中國人來說那就是一個大福音了。這樣的話,向其他多字節內碼語言的轉換也就比較容易了。
2。從Linux操作系統本身而言,應該說他並不是一個以技術領先的操作系統,它的成功完全是一種新的軟件開發模式的勝利。如果自己從頭寫OS的話,我認為可以擺脫這種低技術成分的束縛,完全去實現一種嶄新的,支持新技術的操作系統。但是,要寫一個完整的操作系統顯然不是那麼容易的:
Linux從一開始顯然不是像現在這樣復雜的,但是畢竟Linus使它跑起來了,這就為後續的逐漸完善與發展打下了基礎。這一步顯然很重要,在目前的國內,我還沒有聽說有這樣的操作系統。
如果說有一小部分人首先寫了一個能跑的操作系統,那麼必須在一開始就考慮一些用於實現新的OS理論的安排。不然的話,按照Linux 那種開發模式進行下去,充其量成為“Linux第二“,這顯然就沒有意思了。
如果擺脫了Linux,也就失去了Linux的軟件框架,在這種情況下,所有軟件工程方面的問題就需要更多的考慮了。不然,一個穩定的OS 是不可能產生的。
Linux在目前的小小成功具有更多其他的因素。開發一個完全嶄新的操作系統不能保證它一定能夠獲得支持,而那些完全依靠個人興趣編寫程序的Programmer如果不能得到一定的肯定的話,我想有很多人是會退出的。Allen wing 的見解
在此說幾句, 首先照目前的狀況看,似乎開發小組尚未達到正式啟動項目的技術儲備要求,既然如此我建議先把工作重點放在充實開發小組實力上.
據我所知國內能參與OS開發過程的人還是不少的,但由於業界的學術氛圍和市場導向以及相關資料缺乏問題因而大多不夠全面.拉上一批高手立馬出活兒恐怕不太容易.同時這樣也不利於培養中國自己的Free OS群體.所以我想本站是否應該先以搜集整理相關資料,培養骨干為主,通過我們自己的努力形成持續攻關能力,而後導入正式項目,才能保證水到渠成不致虎頭蛇尾.
另外不知站長注意到沒有,一個成功的OS設計並非只要別人有的我都有就大功告成了,而是一定要有自己的特色-即針對某些方面的優化.尤其是在當今多種通用已經瓜分了整個業界的狀況下再力圖一次性開發一個大而全的新OS恐怕就不是一個襁褓中的民間技術團體的最佳選擇了,因為潛在的用戶與期望的業界關注都不甚樂觀.因此我的建議是先專後全,即:
1.先將CODING人員分為兩組,一組繼續實驗系統的開發,主要探索INTEL處理器的指令系統,保護模式環境建立,以及編譯代碼優化等(不是一般的運用就可以了,若有誰認為他已經吃透了我倒願意出題考考他);另一組人精讀LINUX及BSD源碼,將其中的作業調度和內存管理等核心部件的實現搞熟(建議將結果用完全結構化偽代碼歸檔,以利組內發布).
2.在此基礎上可以嘗試開發簡化版的類linux或類BSD專用OS,我目前能想到的較好選擇是應用網關,例如Access controller,Packagemonitor,simple firewall,以及異質主機接入和數據庫接入,這樣感興趣的測試者肯定不會缺乏,命令集和人機界面可相對簡單,而大量人力資源可被投入對核心算法逐個逐步的改進嘗試.此時可參考單盤LINUX,QNX.
3.而後當技術儲備雄厚,人才又齊全時,我們可以做一個大家伙了,這時恐怕需要不少建模高手和統計專家,他們負責根據上述專用OS項目的反饋與結論進行模型設計,基線建立及模擬應用環境,同時參考其他成熟
的OS,吸取它們的優點,針對它們的弱點,設計優化的全功能內核,這是一個認認真真的OS系統所必不可少的.
4.當核夠硬的時候,包上友好,豐富的SHELL,我想這個新生兒就可以進入他的生命周期了.
上是我的一些淺見,贻笑大方了,但我想兵馬未動,糧草先行這個道理還
是對的.循序漸進的策略也是實際的.謹供諸位參考.
Copyright © Linux教程網 All Rights Reserved