第414章 病毒鼻祖
林鴻原本對于那個學籍已經(jīng)無所謂了,開除也就開除了,不過既然他母親專門打了電話過來說這事,他想了一下,還是決定回水木一趟。當然,他回去,并不是重新上學,而是去辦理停學手續(xù)。
雖然現(xiàn)在停學的現(xiàn)象在國內(nèi)并不是很常見,但是林鴻卻知道,這個手續(xù)還是存在的。
和張瑾交代了一下,林鴻便直接從上滬市直接飛北j,相比起來,這里的交通更加方便,所用時間也更短。
林鴻在北j還有一個實驗室,這次過去,順便將那里的東西一起轉(zhuǎn)運到公司總部。
來到學校之后,他直接去了輔導員的辦公室。
這個輔導員,嘴硬心軟,雖然早就說要開除他的學籍,可是一次次都沒有付諸行動,反而為他打掩護,總體來說,還是挺夠意思的。
“你可終于來了!”戴輔導員見到他感嘆道,“要見你一面可真不容易!”
“輔導員真是不好意思,給你添麻煩了。”林鴻真心道歉,“上次的確是有非常緊急的事情。”
“好了,過去的事情就不提了。”戴輔導員看著林鴻,“你跟我說說,接下來你有什么打算?要不是我給你家里打電話,你是不是直接自己將自己給開除了?”
“之前我還真以為我被學校開除了。”林鴻笑了笑,“我這次來,是打算辦理停學手續(xù)。”
“停學?”戴輔導員聞言并沒有多大的驚訝,他從林鴻身上,從來就沒有看到過一個學生的模樣,“這樣也好。你停學之后打算做什么?”
“我和朋友一起辦了一個公司,以后會將主要的精力放在公司上面。”
“難怪……”
戴輔導員點點頭:“輟學創(chuàng)辦公司,這樣的事情在國外很常見,比爾蓋茨當年就是這樣。不過,輟學之后,實際上他們并沒有停止過學習·我希望你也能這樣,就算是停學,也不要忘記繼續(xù)給自己充電,只有這樣·你以后才能走得更遠。”
“謝謝!我知道。”林鴻點點頭。
停學手續(xù)的辦理有點麻煩,不但需要輔導員同意,并且還要報送院里面以及教務處審批,一兩天內(nèi)肯定是下不來。
林鴻填好了停學申請表格之后,就離開了輔導員的辦公室,回到了604寢室。
來到寢室的時候,正好看到吳東正要出去。
“老大!”吳東看到林鴻之后·頓時大喜,“你終于回來了!”
“呵呵,你這是去上課?”
“不是,正想去圖書館查查資料。我上午已經(jīng)沒課了,剛上完。”
見到林鴻回來,吳東也就放棄了去圖書館的打算,他可是有很多話要跟他說。
林鴻給他們布置的虛擬機項目的那些任務,他們已經(jīng)提前完成·上次問起他接下來該做哪一步,林鴻并沒有給出明確的說法,說見面再談。
兩人聊了一會兒之后·話題便轉(zhuǎn)移到了虛擬機項目上。
“老大,我讓你你看看我們的成果。
吳東說著,便打開了電腦,然后運行了一個類似于終端界面的程序。
這就是虛擬機的終端仿真界面,林鴻坐在電腦前,敲入了他們之前預設好的一個debug命令,便進入了編程模式。
這個模式下,就相當于是一個匯編編譯器,直接輸入cpu的指令,便可以進行執(zhí)行。
林鴻輸入了幾個常見的cpf令·包括mov,addhm61lshllshror等等,執(zhí)行完畢之后,他便直接將cpu的那些寄存器的內(nèi)容直接dump了出來。
顯示的結(jié)果是正確的,完全是按照80860pu的技術參數(shù)來實現(xiàn)的,包括指令格式和尋址方式都完全和8086一致。
整個程序·就相當于是一個計算機硬件,直接用文件來模擬cpu的寄存器以及內(nèi)存結(jié)構(gòu)。
在里面所執(zhí)行的程序,不會對外面的操作系統(tǒng)產(chǎn)生任何影響,最多只是那個文件里面的內(nèi)容發(fā)生了改變。
林鴻接下來查看了一下他們編寫的源代碼,所有內(nèi)容都是用c語言編寫的。
后面的實現(xiàn)代碼編寫得非常不錯,無論是實現(xiàn)方法和執(zhí)行效率,看得出來都經(jīng)過了特別的優(yōu)化,看來那個新加入的計算機老師果然不愧是在這一行研究了這么久,實現(xiàn)這種東西來,簡直有些得心應手的感覺。
林鴻笑道:“那個老師果然不愧是教計算機組成原理的。”
吳東點頭道:“是啊,他說他教這門課程好幾年了,天天照著課本給同學講枯燥的理論知識,大家根本沒有任何概念,剛考完試轉(zhuǎn)眼就把所有的內(nèi)容都還給他了。他看到我們這個項目之后,高興地不得,認真研究了兩天就說要加入我們,然后他將接下來的那指令實現(xiàn)任務全包了下來,不到一周的時間就全部實現(xiàn)了。”
要想將這個做出來,如果不對cpu的結(jié)構(gòu)以及運行原理完全掌握,肯定是完成不了的。
就拿8086的尋址方式來說,就有好多種實現(xiàn)方式,這可不是寄存器到寄存器這么簡單,還得考慮直接尋址和間接尋址,其中間接尋址又分好其中情況。
吳東繼續(xù)說道:“還有,那個郭老師還問我這個項目是不是基于開源協(xié)議,他想要用這個項目改造一下,專門為他的課程定制,以后教學的時候,就分步驟讓自己的學生去分別實現(xiàn),從而讓他們真正掌握這些知識。”
“這個沒問題,他想用就用吧,反正這個項目也主要是用于學習。
“老大,我們接下來該做什么?”吳東又問起了這個問題。
林鴻:“當初讓你做這個項目,主要是讓你理解一下cpu的基本原理,現(xiàn)在看來,這個目的已經(jīng)達到了,相信你對底層的編程也有了足夠的認識。按照我原來的計劃,做到這一步,這個項目就可以停了。”
“停了?”吳東聞言不由一愣,“就這樣停了,也太可惜了吧?現(xiàn)在我們這個項目小組好不容易組建起來,還沒做什么東西呢,就這樣停了?”
這個項目,是吳東做的第一個比較大的項目,同時也是投入時間和精力最多的一個東西,可以說已經(jīng)有了感情,說停就停的話,實在是有點難以接受。
林鴻道:“這是原來的計劃,我原先也沒想到你會因此而組建一個項目小組。現(xiàn)在看來,可以讓這個項目繼續(xù)發(fā)揮余熱,我已經(jīng)想好了,接下來,將這個項目改造一下,將其打造成一個游戲平臺。”
“游戲平臺?”吳東聞言眼睛頓時一亮,但是同時又有些疑惑,這個東西怎么會和游戲聯(lián)系在一起?
在他的印象中,游戲都是非常復雜的程序,涉及到比較復雜的圖形化的界面和運算。他們現(xiàn)在編寫出來的這個東西,說白了,完全就好像是個玩具一樣,根本不具備任何實用價值,也不具備任何趣味性,只有學習這個專業(yè)的人才會對其有點興趣。
而現(xiàn)在林鴻告訴他,要將這個項目進行改造,將其打造成游戲平臺,這不由讓他感到非常奇怪。
林鴻沒有回答,而是問道:“你聽過磁芯大戰(zhàn)么?”
“磁芯大戰(zhàn)?”吳東搖搖頭,“沒有聽過。一個游戲?”
“是的,一個流行與黑客和計算機科學家內(nèi)部的游戲,也是病毒的始祖。”
林鴻說著,打開了自己的電腦,然后運行了自己的電腦中的一個程序。
吳東完全被林鴻的話給震了一下,病毒的始祖,這名頭實在夠大。他連忙湊上前去,查看林鴻運行的那個程序。
之間顯示器中,出現(xiàn)了一個黑色的方框,方框中則出現(xiàn)了兩個不停閃動的兩點。
兩個兩點都在開始移動,不過它們的方式并不相同,其中一個顏色為紅色,它猶如一條小蛇,一步一步地朝前前進,而另外一個則為黃色,它似乎長了腿,直接跳躍式前進,他們經(jīng)過的地方都留下了自己的顏色,方框中的格子不斷地被它們侵蝕著。
“這個程序叫做達爾文。”林鴻介紹道′“是幾十年前,由一位叫做麥耀萊的工程師在貝爾實驗室中編寫的······”
1959年,貝爾實驗室的三個二十多歲年輕人發(fā)明了一個名為“磁芯大戰(zhàn)”的游戲,將十年前電腦先驅(qū)者馮"諾依曼在他的論文《自我繁衍的自動機理論》中所描述的病毒變?yōu)楝F(xiàn)實,這三個人分別是麥耀萊、維索斯基以及莫里斯。
“…···這個莫里斯,就是后來鼎鼎大名的莫里斯蠕蟲的作者羅伯特"莫里斯的父親。”林鴻繼續(xù)介紹道,“這個紅色的戰(zhàn)士,叫做爬行者,每一次執(zhí)行都會自動生成一個副本,也就是將自己復制一份,它就是通過這個簡單的機制不斷地吞噬著里面的內(nèi)存。在當時,磁芯就是內(nèi)存。”
吳東聽著聽著也有些明白了。
眼前這個游戲雖然看上去沒有什么趣味性,但是底層所代表的機制卻不簡單。
一紅一黃兩個戰(zhàn)士在里面搶著內(nèi)存資源,不停地互相吞噬,誰能最后將所有內(nèi)存給搶占,誰就能獲得勝利。
“老大,我明白了!你的意思是,我們將虛擬機平臺改造成為類似于達爾文這樣的平臺?然后讓大家編制戰(zhàn)士程序,在里面玩游戲。是不是這樣?”
,