肖遠發現問題,是在對03:12:31以後的數據包的分析過程中,這時不同的數據包並不完全相同,說明世界還沒有完全靜止下來。

分析工具一邊比對每一次的記憶體資料樣本,一邊將這些資料以圖表的形式展示出來,便於肖遠更直觀的觀察這些資料的變化特徵,只不過因為分析資料要花費一定的時間,所以,影象的變化比起god程式的監控影象來,變化慢了很多。

因為這裡的影象和god監控程式的顯示原理一樣,所以顯示出來的圖形也與那裡的完全相同,剛開始的時候,影象上一個與其他地方有著明顯分別區域在緩慢的四處移動,肖遠知道這個漩渦是種子的程式碼在世界中的映像。

看著種子的映像仍然存在,肖遠想起第一階段的分析中,那些不再發生變化的記憶體影像中,好像種子不見了。

“它難道被抹殺了?”肖遠盯著電腦屏幕上的分析過程,心中暗暗思忖,“不應該的,如果種子被抹殺的話,god應該會很快就將世界的平衡恢復,但是事實是沒有恢復,這其中一定發生了什麼我沒有想到的事情。”

“咦,怎麼回事?”正在思考的時候,肖遠發現原本在影象上還十分明顯,一眼就能分辨出來的種子突然消失了,接下來影象又變化了兩幀,就靜止了,既沒有繼續恢復平衡,也沒有因為不平衡而繼續變化下去。

肖遠暫停了分析軟體,從影象靜止下來的時間點提取了一個記憶體樣本,拿來和最後的記憶體樣本檔案進行了對比——完全一樣。

“種子突然消失了,然後god也不工作了,有點兒像同歸於盡。”

肖遠再次回放了剛才的影象演變過程,瞪大了眼睛盯著螢幕上的影象,想要看清楚在影象消失的一瞬間,究竟發生了什麼,但是卻一無所獲。

於是他乾脆不讓圖形自動執行了,而是手動讓這些影象一幀一幀的出現,仔細觀察,在影象消失的上一幀停了下來,仔細觀察了一下,仍然是沒有發現什麼問題,於是他將這一幀的記憶體樣本提取了出來,從中將種子的程式碼單獨提取了出來,對其進行了反匯編。

得到種子程式這一時刻的匯編程序後,肖遠發現得到的它和種子未放入世界進行進化之前的程式相比,已經發生了很大變化,閱讀時給他的感覺就像在閱讀一段全新的程式一樣,要知道這個程式根本就是出自他手。

“看來種子真的自我進化了,只是它為什麼會自動消失呢?”肖遠努力在程式碼中尋找著種子自動消失的痕跡。

將程式通讀了一遍,肖遠發現進化後的種子程式無論是長度還是複雜性都增加了很多,其中存在一段奇異的程式碼。

“這應該就是種子能夠突然消失的原因了。”肖遠覺得自己似乎已經找到了答案,但是這段程式碼很晦澀,難以理解,這讓他感到有些受傷。

“見鬼了。”肖遠不由得罵了一句,然後反覆讀了幾遍這段程式碼,並將其中涉及到的暫存器,以及暫存器之間的數據流向繪製成了影象,並找來一本這臺工作站的CPU編碼的詳細手冊,一點一點兒加以對照。

所謂讀書百遍,其義自現,程式也是如此,反覆讀過幾遍後,肖遠越來越覺得這兩端程式有些非比尋常,並有種隱隱的預感,讀懂這兩端程式將是他解開種子程式以及god程式反常表現的關鍵所在。

終於,肖遠從這些程式碼中找到了最關鍵的邏輯,卻被他的發現下了一跳,甚至有些難以置信,因為這段程式碼竟然用一種很巧妙的方法完成了一個遠端跳轉,跳轉到目的地已經超出了god創造的世界的記憶體範圍,它所使用到的指令竟然是工作站CPU的一段特殊的指令序列,而這段指令肖遠事先根本就不知道,更不會寫到程式中。

肖遠心中疑惑,如果不是他有非常豐富的閱讀程式碼的經驗,手邊又有CPU指令集的詳細資料可查,這段程式碼究竟是幹什麼用的,就算他讀上一百遍,恐怕也不會知道的。

“只是種子程式的程式碼裡怎麼會有這樣的代碼段了?”

肖遠對這個現象倍感不解,覺得不把這個現象搞清楚,會很不甘心,於是他再次將沒有反匯編之前的種子二進制程式碼拿了出來,決定從二進制程式碼入手,試試能找到什麼端倪不能。

直接閱讀二進制程式碼顯然是不可行的,好在肖遠手裡還有另外一個工具,這個工具的介面分成左右兩欄,左欄是二進制程式碼,右欄是二進制程式碼對應的彙編程式碼,兩邊對照著閱讀,就不是那麼困難了。

【鑑於大環境如此,本站可能隨時關閉,請大家儘快移步至永久運營的換源App,huanyuanapp.org 】

可惜這樣反覆讀了兩遍,肖遠還是沒有發現什麼規律,隨即意識到自己的研究思路有點兒問題,種子的這段程序一定是進化而來的,也就是說它的程式碼本身也是在不斷演變的,自己這樣靜態的看,本身就有問題。

既然意識到了問題,肖遠馬上改變了策略,將多個記憶體樣本中的種子程式的二進制程式碼擷取了出來,然後對這些不同時間點的二進制程式碼進行了縱向比對,重點關注了那段奇異程式碼的演化過程,並不斷對比手邊的CPU指令手冊。

經過一番比對,肖遠又想到種子程式的進化還受到god程式的影響,於是又將god程序代碼拿來,橫向縱向做了很全面的分析比對,兩個小時後,他終於搞明白了這段程式碼的來歷,心中卻暗暗驚異。

首先要確定的一點,這段程式碼並不是憑空產生的,種子程式雖然具有一些初步的進化功能,但是還沒有智能化到自主的分析CPU指令集,並加以利用的逆天程度,但是它的來源卻也讓肖遠感到了一場驚奇,因為這段程式碼是從god程式中學習而來的,而god的程式中的這段程式碼來自於彙編時,匯編程序對它進行的自動最佳化。

更讓肖遠感到驚訝還有另外一件事情,種子程式學習到的這段程式碼竟然利用了god程式自身的監控機制存在的一個漏洞,執行後悔進行跨區段遠端跳轉,將自己復制到了god程式的代碼段中,而肖遠設定的種子規則中,有一條是禁止種子進行自我複製繁衍,因此當種子將自己復制到god代碼段中時,世界中的種子自動進行了自我銷燬。

種子侵佔了god程式的代碼段,結果導致與god程序代碼段有一部分被破壞掉了,從而失去了一部分功能,而這部分功能恰恰是世界的平衡修復功能,因此才會出現種子突然消失後,世界中雖然存在大量不平衡,但是god卻沒有再對其進行修復的現象。

而種子在進入god程式的代碼段之後,自身安全的到了保障,再也沒有被修改或抹殺的危險存在,於是按照肖遠最初設定的進化模型,它的自我進化也就停了下來,程式碼也不再執行。

“真想不到啊,這段程序竟然能夠找到god程式的一個漏洞,究竟是巧合呢,還是它自我進化的原因,我需要再做一下試驗……”

肖遠發現了有些很有意思的東西,進而產生了一些新的想法,於是再做幾個試驗,加以驗證,如果這些想法成立的話,他覺得自己似乎找到了一個非常實用的大殺器。

章節目錄

推薦閱讀
相鄰推薦