我在大型機上玩俄羅斯方塊
下面是我如何通過訪問虛擬 Linux 服務(wù)器,在大型機上編譯和玩我最喜歡的游戲。
可以 在現(xiàn)代大型機上運行 Linux 的能力為在該平臺上做各種事情打開了大門。一個 Apache HTTP 服務(wù)器?很簡單!一個數(shù)據(jù)庫?你想用 SQL 還是 NoSQL?Kubernetes?當然沒問題!正如我在 大型機上的 Linux:過去和現(xiàn)在 中總結(jié)的那樣,今天所有最流行的服務(wù)器 Linux 發(fā)行版都有大型機的版本。
這對那些在大型機上運行關(guān)鍵任務(wù)基礎(chǔ)設(shè)施的公司來說是個好消息,但如果你只是想玩玩大型機呢?我第一次在 IBM LinuxONE 上使用 bash shell 時,安裝了 irssi 聊天客戶端,向 IRC 上的所有朋友展示了 /proc/cpuinfo
的輸出,以炫耀這是一個 s390x 架構(gòu)的系統(tǒng)。
一開始,我對下一步該做什么感到茫然。然后我想,用這臺巨大的計算機來玩游戲會很有趣。我首先想到的是 NetHack,但事實證明,我可以用簡單的 apt install nethack-console
來安裝它。不,我應(yīng)該編譯一些東西才好玩!對于每一種計算機架構(gòu),你都需要為其編寫的編譯器和解釋器。Linux 在大型機上已有 20 多年的歷史,你通常期望的大多數(shù)編譯器和解釋器都已經(jīng)被移植了。
在我的成長過程中,我最喜歡的游戲之一是俄羅斯方塊,所以它是我進行實驗的合理選擇。我找到了一個用 C 語言編寫的開源俄羅斯方塊游戲,叫做 vitetris,并試了試。這就像在任何其他 Linux 服務(wù)器上編譯一個 C 語言程序一樣。
首先,我需要安裝一些依賴項。這臺主機運行的是 Linux,所以我可以用我的包管理器來 安裝構(gòu)建需求,然后我就順利完成了。
接下來,就是獲取代碼和構(gòu)建的問題了:
curl -LO https://github.com/vicgeralds/vitetris/archive/v0.58.0.tar.gz
tar xvf v0.58.0.tar.gz
cd vitetris-0.58.0/
./configure
make
不一會兒,我就開始玩我最喜歡的游戲了!
./tetris
Screenshot of an open source Tetris game in progress, running on Linux
正如我所說,這與在 Linux 服務(wù)器上構(gòu)建其他 C 程序完全一樣,但你是在大型機上做的。
不幸的是,我的車庫里還沒有一臺大型機。相反,我是在馬里斯特學(xué)院通過 IBM LinuxONE 社區(qū)云 計劃托管的虛擬服務(wù)器上完成了這一切。它讓你免費訪問一個 s390x 架構(gòu)的 Linux 服務(wù)器,你可以選擇最流行的發(fā)行版。通過這個虛擬服務(wù)器,你可以在 120 天內(nèi)進行實驗。
如果你是一個開源項目的代表,正在考慮在 s390x 上為 Linux 構(gòu)建你的應(yīng)用,也有一個項目適合你。當我不玩俄羅斯方塊的時候,我在 IBM 的實際工作就是與開源社區(qū)合作來做這件事。你可以請求一個永久的 Linux 虛擬服務(wù)器供你的社區(qū)用于開發(fā),無論是進行手動測試以查看你的應(yīng)用是否會構(gòu)建,或正式將其添加到項目的持續(xù)集成系統(tǒng)中都行。我建議從社區(qū)云開始做一些實驗,然后你可以填寫 這個表格 來啟動獲得永久虛擬服務(wù)器的流程。