到底應(yīng)不應(yīng)該將Linux作為第二系統(tǒng)使用
很多年前的程序員基本都是從Linux編程起家的,現(xiàn)在的程序員似乎更習(xí)慣于Windows和Mac的用戶界面體驗(yàn)。操作系統(tǒng)作為電腦最重要的組件之一,就好像是平臺的命脈,決定著軟件兼容性以及軟硬件交互。對于很多人來說,Linux與Windows或者M(jìn)ac的組合似乎是***選擇。
本質(zhì)上,電腦是可以支持雙系統(tǒng)的。Windows有它的特長,Linux也有它的優(yōu)勢。Linux系統(tǒng)有優(yōu)秀的定制能力,安全性能,專門的開源社區(qū),并且所提供的服務(wù)通常都是免費(fèi)的。當(dāng)然,Windows或Mac也有相應(yīng)的支持者以及某些優(yōu)勢,比如原生APP和簡單友好的交互界面。既然各有優(yōu)劣,到底要不要選擇雙系統(tǒng)呢?
選擇雙系統(tǒng)的五大理由
1、新舊版本游戲通殺
對于喜歡玩游戲的程序員來說,Windows上的本機(jī)游戲非常不錯(cuò),而在Linux上編程比在Windows上性能更優(yōu)良。當(dāng)然,多虧Steam OS推動了跨平臺兼容的游戲性能優(yōu)化,使得Linux版本的游戲迭代得已跟上Windows和Mac的腳步。但Windows依然是玩游戲的***選擇。
如果你想玩一些舊版的游戲(比如16位的)怎么辦呢?現(xiàn)在的32位或64位Windows系統(tǒng)可能無法很好地支持游戲運(yùn)行。Linux就可以通過32和64位操作系統(tǒng)對16位的程序提供支持。這要多虧WINE,許多Windows應(yīng)用都可以以虛擬機(jī)的方式運(yùn)行。如果既要編程,又要通過新舊多版本游戲度過漫漫長夜,雙系統(tǒng)是個(gè)不錯(cuò)的選擇。
2、主機(jī)
當(dāng)在一個(gè)系統(tǒng)上原生運(yùn)行操作系統(tǒng)時(shí)(不同于虛擬機(jī)或者VM),操作系統(tǒng)能夠訪問全部主機(jī)。因此,雙系統(tǒng)意味著可以訪問更多的硬件組件,并且通常會比VM的速度要快。因此在VM內(nèi)運(yùn)行Linux或者Windows,為了得到更好的性能,通常需要不錯(cuò)的配置。
3、兼容性
你可能會發(fā)現(xiàn),一些你比較喜歡的、常用的應(yīng)用程序并不是在任何一個(gè)系統(tǒng)中都可以很好地運(yùn)行。很典型的一個(gè)例子就是Netflix(不過現(xiàn)在已經(jīng)克服了),然而,常規(guī)使用的Adobe應(yīng)用或者一些video游戲可能會強(qiáng)迫你使用雙系統(tǒng)。因此,安裝雙系統(tǒng)可以確保你可以訪問所有的應(yīng)用和服務(wù)。
4、Linux平臺的編程效果往往更好
還記得大學(xué)計(jì)算機(jī)有一門必修課就是操作系統(tǒng),當(dāng)時(shí)的任課老師建議我們一定要嘗試使用Linux編程,并認(rèn)為可以在Linux上編程才算得上一個(gè)合格的程序員。我對這個(gè)觀點(diǎn)印象很深,想要學(xué)好編程嗎?像那些大片里的黑客一樣,手指敲鍵盤就像鋼琴家演奏《野蜂飛舞》一樣。
Linux在編程上的優(yōu)勢十分明顯。首先,它是免費(fèi)的,這是一個(gè)很大的加分項(xiàng)。其次,它可以支持很多編程語言比如Java,PHP,Ruby,Python和C/C++,外加各類編碼應(yīng)用負(fù)載和bash支持。如果你的簡歷里有一項(xiàng)是熟練掌握Linux,將會十分吸引人。
想要為Windows或MAC開發(fā)應(yīng)用嗎?當(dāng)然,使用Linux完全沒問題,但一般來說,原生開發(fā)的效果可能更好。例如,Windows提供了一個(gè)十分強(qiáng)大的編程工具Visual Studio,近幾年還在不斷完善優(yōu)化,Visual Studio很適合用來進(jìn)行Windows應(yīng)用開發(fā)??紤]到雙系統(tǒng)的應(yīng)用程序開發(fā),可以使用Linux作為開發(fā)環(huán)境。
5、使用簡單、方便
很多人習(xí)慣使用Windows和Mac系統(tǒng)之后,會認(rèn)為Linux系統(tǒng)十分復(fù)雜,其實(shí)這是個(gè)誤解。雖然命令行的運(yùn)行方式會讓新手需要花上一段時(shí)間去適應(yīng),但Linux其實(shí)非常易用。同樣地,雙系統(tǒng)啟動也很容易實(shí)現(xiàn)。網(wǎng)上有大量的此類教程,可以設(shè)置將Linux作為第二系統(tǒng)進(jìn)行安裝,并在啟動時(shí)進(jìn)行選擇。文件共享也將不是問題,因?yàn)長inux可以訪問大部分Windows文件。
選擇雙系統(tǒng)需要顧慮的兩點(diǎn)
凡事很難盡善盡美,安裝雙系統(tǒng)有一些缺點(diǎn),你也應(yīng)該認(rèn)真考慮。
1、復(fù)雜性增加
雙系統(tǒng)的安裝過程并不復(fù)雜,雖說不是每所大學(xué)都有一個(gè)叫肖奈的大神,但一般級別的大神還是有那么幾個(gè)的。解決了安裝問題,兩套系統(tǒng)之間的文件共享可能是個(gè)不小的挑戰(zhàn)。Linux訪問Windows文件通常問題不大,但通過Windows訪問Linux文件就有些難度了。Linux通常使用EXT4文件系統(tǒng),Windows則需要求第三方應(yīng)用具備EXT4兼容性。上山容易下山難,盡管雙系統(tǒng)的安裝不是問題,但卸載就沒那么簡單了,可能會有一些文件殘留,卸載不徹底。如果沒做好隨時(shí)處理輕微故障的準(zhǔn)備,不要急于嘗試。
2、虛擬機(jī)基本能夠?qū)崿F(xiàn)同樣的效果
正如前面所討論的,虛擬機(jī)是在一個(gè)操作系統(tǒng)內(nèi)運(yùn)行另一個(gè)操作系統(tǒng)的不錯(cuò)的解決方案。這個(gè)方法可以被用來在另一個(gè)操作系統(tǒng)內(nèi)運(yùn)行Linux,反之亦然。另外,安裝和卸載也變得更加簡單,不用擔(dān)心影響其他加載程序。
選擇虛擬機(jī)的解決方案不是要占用更多的硬盤空間,并且資源分配要超出直接運(yùn)行Linux發(fā)行版的。早期的一些硬件可能不適合跑虛擬機(jī),因?yàn)榭赡艽嬖谟布?qū)動空間缺失或者系統(tǒng)配置較低的情況。另外,虛擬機(jī)的操作系統(tǒng)可能無法對PC進(jìn)行完全訪問。
如果你對于使用雙系統(tǒng)并沒有十分必要的理由,就要慎重考慮了。但雙系統(tǒng)與單系統(tǒng)相比,確實(shí)能夠提升兼容性、安全性等。對于程序員來說,我認(rèn)為雙系統(tǒng)必須一試。