簡體版

第二卷 黑客聖地 第219章 重要事情

全文字無廣告第219章重要事情

這件事情,雖然無論是律師還是各自的家長都認為因為缺乏先例,再加上他們又是學生創業,就算是被罰,也不會太嚴重,但是成員心中還是被蒙上了一層陰影。

畢竟這是他們第一次遇到這種情況,之前根本沒有想過此類方面的問題。

他們發現,要想真正做好一件事,除了埋頭解決技術方面的事情,還會踫到其他一些預想不到的情況。之前這些瑣事都被馬修一個人給處理了,在這些人當中,馬修算是對外能力最強的一個。

可是現在,這件事的出現,讓他們真正感覺到了校園之外的沖擊。這些事情如果只是安安分分在學校讀書,是絕對踫不到的。公司成為了他們涉足社會的一個媒介,給他們林鴻、亞瑟以及馬修三人的內心都造成了比較大的影響,以至于以後他們各自創業的時候,都會事先考慮自己所做的事情,是否違反了當地法律,有哪些事情需要提前做好準備?

林鴻回到自己的房間,將這件事情拋在腦後,繼續開始完善外殼程序的系統調用功能。

由于已經完成了的基本框架,實現起系統調用速度比之前要提升了十倍以上,地基打好了,上面的建築建起來就快了。

所以,在午夜十二點之前,他就完成了總共二十多個系統調用,即將當初移植到里面的所有功能都給搞定了。

他登上,看到正好也在線,于是便發了個消息給他,然後將源代碼直接在線傳給了對方。

【︰伙計,你的效率真快,移植了,以後的編寫工作會要大大加速了!】

【:下一步是不是可以將移植過來?這樣我們可以不用再切換到的環境中編譯系統了,直接在平台下編譯。】

【:我這兩天本來正打算著手做這件事,但是現在我有一個新的想法。】

【:說來听听。】

【:我覺得我們應該另外實現一個文件系統,而不是直接使用的文件系統。】

在此之前,為了降低編寫代碼的難度,從中借鑒了很多代碼,其中最為完整的就是文件系統的實現。

【:的文件系統是專門為微內核設計的,當初在設計的時候也只考慮過教學用途,目的是為了更好的讓學生理解,根本無法真正用在大型操作系統上,在性能上有著致命的缺陷,我想你也應該發現了這點。(全文字電子書免費下載)】

林鴻對此表示贊同。

系統在文件處理方面的效率的確有些慢了,剛開始的時候還感覺不到,但是在他編譯系統的時候,就極其明顯了,文件一多,搜索查找以及讀取文件的效率就變得極為緩慢。在這點上,還比不上系統。

的文件系統是模仿的文件系統而設計的,其數據結構整體上和文件系統大致相同,大致也可分為引導塊、超塊、柱面、節點等。

但是作者安德魯這個系統本身是用來作為教學用的,所以在設計的時候,就考慮到要讓學生能夠比較容易理解,將其中的一些復雜實現就省略了,只保留了其骨架,進行適當修改之後,能夠讓其正常運轉,並沒有經過大量文件存儲方面的性能測試。

當磁盤中文件比較少的時候,根本感覺不到其中的差異。

但是,在編寫操作系統的時候,代碼雖然不是很多,也就一萬兩千行左右,但是這一萬兩千行代碼並不是只在一個文件里面,而是分布在多大幾十個文件和上十個目錄當中。

在編譯系統的時候,編譯器會按照編譯索引文件來按照順序對這些源代碼一個一個地查找,並鏈接起來,然後再統一進行編譯。

按理說來,只有這麼點文件,這個過程應該是非常快的,但是事實證明,要想將的v0.00版本編譯出來,都至少要花費四十分鐘的時間。

當初林鴻一直那麼一個小軟件的時候,都花費了十分鐘左右的時間。

這樣的效率實在太低了,要是在或者下,所花費的時間可能只有五分之一甚至十分之一。

于是便開始尋找到底哪里出現問題,為什麼會導致編譯速度如此緩慢。

最終他發現,原來這是文件系統設計方面的原因,他覺得有必要對這點進行改變了,他可不想將這樣一個文件系統移植到里面,那簡直就像是在美餐一頓的時候吃了一只蒼蠅那麼惡心。

身為技術宅是絕對不允許這樣的情況出現在中的。

林鴻也覺得這個問題的確很重要,文件系統是操作系統的基石,如果地基不打好,會直接影響到上層建築的高度。

【:我最近這段時間都在想這個問題,接下來會正是著手開始設計了。不過在此之前,我會先解決一件更為重要的事情。】

【:更為重要的事情?】

【:每一個男人都要經歷過的事情啊,你懂的,哈哈!】

【:不懂。】

【:……差點忘記你的年齡似乎比我要小不少了。我要去追求一位心儀的女孩,這該懂了吧?】

林鴻看到的話,頓時有些汗顏。他剛剛的確沒有反應過來,這也不能怪他,剛剛他們還在討論技術方面的問題,突然之間就跳躍到追求女孩的話題上,作為一個世紀年齡才十四歲的中國籍技術宅來說,能想到這個問題才怪。

【:原來如此。那預祝你馬到成功,早日抱得美人歸。】

【:哈哈,謝謝!】

【:對了,之前忘記跟你說了,你移植的時候最好是按照的標準來,這樣可以讓我們的系統獲得更大的兼容性,以後那些的用戶轉移到我們的中來也不會有任何障礙。】

【標準?】

【:這是組織為要在各種操作系統上運行的軟件而定義的一系列互相關聯的標準的總稱,最初起源于1985年的一個項目……】

接著,開始給林鴻詳細介紹了一下這個標準的有關內容。

實際上,之前也對這個標準一點都不清楚,只是听學校的老師曾經說起過,因為這個標準是下的標準,統一規定了所有系統命令的實現細節。

于是,剛開始的時候,他便在的郵件討論組中發布了一個求助帖子,尋求有關的相關標準下載地址,可是這個帖子並沒有獲得幾個人的關注和回應,他沒有找到的相關資料。

于是,他只好退而求其次,找來一份服務器的使用手冊,按照上面的命令調用一個個對這些系統命令進行實現。

但是,這份手冊上並沒有詳細說明這些命令所實現的內部細節,只描寫了結果。

例如ls命令,手冊上只描寫了這個命令的結果,以及可以加上哪些參數實現,如「ls」可以將當前目錄下所有的文件,包括隱藏文件在內,都顯示出來。

具體的實現方式,則是按照文件系統中的原理自己想出來的,例如首先要找到當前目錄的引導區,然後再分析里面的文件節點,從這些節點中讀出每一個文件的名稱,大小以及創建日期等信息,然後再將其顯示在顯示器屏幕上。

要實現這些系統調用的功能,必須對底層的基本原理非常了解,當然這並不能難倒,否則他還談什麼編寫自己的操作系統?

他按照手冊和《操作系統︰設計與實現》中所提及到的資料,總共實現了二十來個系統調用,這正是林鴻在中所實現的那些。

【:前一陣子才有一個朋友給我寄了幾卷厚厚的的手冊,不過既然現在你已經開始移植了,接下來的工作你就繼續做著吧。】

【:從哪里可以找到的手冊?】

【:這點我也不太清楚。不過,你身在美國,應該不難,去圖書商城或者圖書館看看,應該可以找到。我這幾本手冊的出版社是……】

接著,將出版社和地址方面的信息全部提供給了林鴻,讓他如果實在找不到,就按照這些信息去找,直接向出版社郵購也行。

【:還有,我一個朋友手里正好有基于隻果系統的服務器,上次我讓他試用了一下軟件,他願意免費將服務器端進行托管,你覺得怎麼樣?】

說的事情,是上次林鴻提到自己想要將的服務器端托管到另外的地方,于是就留心了一下。

【:可以。我把服務器端的安裝文件傳給你。】

隨著訪問用戶的增多,官方的那個服務器的性能有點跟不上了,再加上最近又出現了德州儀器公司的那檔子事情,林鴻最終同意將服務器端轉走。

原本林鴻還打算將發布出去,讓更多的人使用,並且繼續改進,可是上次和凱文聊過一次之後,他的這個計劃便擱淺了。

他決定重新設計的結構,增加其安全性,然後再發布出去。

目前這個版本,暫時就用來內部幾個人溝通吧,等將服務器端移走之後,林鴻便決定推薦這個軟件其他成員使用。

和結束聊天之後,林鴻便開始正式著手重新設計軟件。

!@#

(全文字電子書免費下載)

溫馨提示︰方向鍵左右(← →)前後翻頁,上下(↑ ↓)上下滾用, 回車鍵:返回列表

投推薦票 上一章章節目錄下一章 加入書簽