64 位系統和 32 位系統相比,有哪些優缺點?

我在考慮要不要從 32 位換成 64 位的了。

關於軟體兼容性方面,只考慮 Linux 軟體的兼容性(當然包括常見商業/閉源軟體,如 VMware、Matlab 等,以及 wine)。

更新:

請大家不要在這個問題上浪費時間了,因為這個問題已經被人修改得面目全非了。最開始是在 Linux 和 Arch Linux 等標籤的,現在被刪掉了,反而加上了「操作系統」這個我根本不需要的標籤。

我已經對知乎這種隨意更改別人的問題導致回答走錯方向絕望了,這個問題本身也在幾年前就解決了,所以就不改來改去導致「編輯戰」了。

更新:

我已經明確知道差異啦(以下僅限x86平台):

64位系統擁有更大的定址空間。

64位系統擁有更多可用的寄存器。

64位系統擁有更多可用的CPU指令。

64位程序的指針比較耗內存。一個繞過方案是使用32位指針,不過實踐少。


首先說兼容性:

以我的經驗,64 位的兼容性更好。理由很簡單:通常 64 位的系統,可以運行 64 位應用程序和 32 位應用程序。但是 32 位的系統,並不總是能正常運行 64 位的程序。

所以,基本上 64 位裝了 multilib 然後 64-32 通吃, 32 位雖然理論上可以吃 64 位應用程序,但這方面的測試和應用並不普遍,出了問題誰也不保證能解決。

我現在所有的 Linux 機器都是 64 位。鑒於 Linux 下面絕大多數應用程序都有 64 位,Linux 顯然是比 Windows 更值得上 64 位的。

現在來說優點:

64 位的一個優點就是你的 CPU 終於可以全部用上了,在 32 位模式中,你的 CPU 只有一半的寄存器起了作用,而這部分寄存器也只有一半的空間(低32位)起作用。真正工作的寄存器空間只有四分之一。換句話說,32位模式中,你的 CPU 有四分之三的寄存器空間是閑置的。

64 位的另外一個優點是原生 SSE 支持,一般而言,32 位 Linux 代碼的編譯選項都不帶 SSE,除了某些單獨處理要支持 SSE 的應用程序以外。而 64 位的所有應用程序,SSE 都是打開的,因為所有 64 位 x86 CPU 都支持 SSE,所以這個選項直接打開了。

當然 64 位另外一個優點就是你的應用程序終於可以用上2G以上的內存了,32 位可以使用 PAE 內核你的系統總內存達到 64G。——但是對於任何一個單一的進程,你仍然受到 4G 的限制,而對於不同的系統而言,有可能只能用到 2G。而對於 64 位系統,任何一個程序都可以分配超過 4G 的內存,這對於 Photoshop 一類吃海量內存的軟體來說非常有用。

最後來說說缺點:

64位的最大缺點自然是內存佔用。首先, 64 位代碼天然的比 32 位代碼長一倍,考慮到指令集方面的優化,實際上,64位代碼可能只相當於32位的 120%-150% 空間,當然,即便是這一點,也比原先佔用更多了。

其次,如果你一定需要運行那些閉源的,不帶 64 位支持的 32 位軟體,那麼你就需要安裝 multilib,而這,一定程度上意味著你一個機器有兩套庫,這又是額外的內存佔用。

所以總的來說,系統內存佔用可能加倍,當然這對目前的主流機器來說並沒有太大問題。也就是從原先的系統啟動 512M,變成了系統啟動占 700M-1G 的水平。


就我目前了解,64位系統應該是趨勢。

電腦如果用了4G以上的內存,必須使用64位系統才能識別內存。

但是目前還是有很少部分軟體不支持64位系統


如今的win7 系統可以說是微軟使用比較穩定比較成熟的系統,windows7 系統有好幾個版本分別是家庭版、專業版、旗艦版,企業版,使用最廣泛的那就屬win7 旗艦版了。很多電腦用戶在選擇win7系統的時候在糾結是該選擇32位好 還是64位比較好?對於這個問題豆豆特別整理了這個教程,win7 32位與64位版對比分析。

win7系統32位版

win7系統64位版

  關於32位和64位系統的差別,那真是說來話長,這裡我們首先要了解一下CPU的架構技術,通常我們可以看到在計算機硬體上會有X86和X64的標識,其實這是兩種不同的CPU硬體架構,x86代表32位操作系統;x64代表64位操作系統。那麼這個32位和64位中的「位」又是什麼意思呢?相對於32位技術而言,64位技術的這個位數指的是CPU GPRs(General-Purpose Registers,通用寄存器)的數據寬度為64位,64位指令集就是運行64位數據的指令,也就是說處理器一次可以運行64bit數據。舉個通俗易懂但不是特別準確的例子:32位的吞吐量是1M,而64位吞吐量是2M。下面我們就從兩個大家最關心的話題來談一談:

最新win7 32位系統下載:win7 32位旗艦版系統下載

最新win7 64位系統下載:win7 64位旗艦版系統下載

  一、64位提供更好的性能么?

  我猜很多人認為64位處理器要快於32位處理器。因為有這樣一個事實,從8位過渡到16位,從16位過渡到32位的過程確實帶來了一些性能提升。基於以上的原因,是否可以認為64位的處理器可以更快?有這麼一個例子,很多32位處理器支持S***指令集,但是大多數程序員根本不會使用它們,因為這會妨礙到不支持這些指令集的電腦運行他們編譯的程序(e.g.SSE2可以令Zip壓縮更快,但是最常用的3個壓縮軟體都沒有使用它)。因此,只有應用了64位優化的64位程序才會有性能提升。不幸的是大多數Windows應用程序並沒有做這個優化。不過最近一年來,新生了很多的64位應用程序,但不要錯誤地認為,它們將比32位版本更快。因為通常情況下,這個64位版本的製作,僅是因為32位版本無法正常運行在64位Windows操作系統上。但是有些對64位有性能依賴的程序,比如數學計算(e.g.Mathlab)和各類視頻處理軟體,或者軟體開發者明確的支持64位(e.g.7zip),那麼速度可能較32位版本有明顯的變化。另一方面,64位Windows7不會減慢您的計算機性能。雖然類似CLR(.net底層)的程序會進行一些計算使32位程序能夠運行在64位系統上,邏輯上需要花費較多的時間。但是,在實踐中你會不知道其中的差別。幾乎所有性能測試都可以證明,在大多數情況下不用在意64位和32位之間性能差異。

  二、兩者對軟、硬體兼容性

  當vista的發布,許多獨立軟體開發商(ISV)都沒有準備,由於巨大的結構性變化,不少應用程序都無法正常運行在Vista上。當時,大多數組織都認為過渡到vista只會造成更多的麻煩,同樣,Vista 64位只會更多的麻煩。但是Windows7不同,相比於Vista,Windows7沒有重大的結構變化,所有原本Vista下可以正常運行的程序Win7下都可以正常運行。同時,軟體開發者早已修改了他們軟體對於Vista的兼容性。這意味著就32位系統來說,兼容性對於Windows7來說不再是問題。當然,風險仍然存在,軟體的兼容性仍然是64位的軟肋,但是可以確信,不兼容的概率應該大大低於Vista 64位。因為Vista對內存需求的增加已經迫使大量的用戶使用64位系統,使軟體開發者收到反饋並改善64位兼容性。如果你不確定軟體可以運行在64位系統上,可以先使用VMware或VirtualBox,使用並確定這些軟體的兼容性。因為有些企業程序仍然是16位的,16位應用程序和MS-DOS程序無法運行在64位系統下。

  硬體兼容性的情況同軟體十分相似,所有支持Vista的設備現在大多可以放心的正常使用於Windows7,微軟很清楚,Vista的市場營銷的失敗,主要是兼容性問題,同樣的錯誤不會再犯第二次。大多數測試報告表明,過渡到Vista的設備也將順利地過度到Windows7系統。但有些很老的設備的驅動已經不再更新(音效卡居多),因為32位驅動不能用於64位系統,所以64位系統硬體不兼容的概率高於32位系統。至於新硬體,所有的廠商都會發布64位可用的驅動,這一點毋庸置疑。

  通過以上對win7系統32位於64位的性能、硬體兼容性對比,相信很多用戶對他們的區別也有了一定了解,如果你的電腦是大內存配置的話,那麼還是建議使用win7 64位旗艦版系統,當然,還是根據個人需要吧,希望這個教程讓你糾結的問題也有一個明確的選擇。


我來補一點吧:由於32位能表示的整形有一個最大值(2的32次方-1),這樣可能導致一個問題:時間沒法表示了,好像至多到2038年吧,之後的系統就。。。 所以可以的話儘快遷移吧,linux下64位軟體不少的,不必擔心


32位向64位移植的主要亮點在於兼容,無論兼容的好也罷(好事理所當然的),不好也罷(這就是人為造成的)比如我為了優化,使用了native特性來開發的,或者是直接用彙編寫的代碼,到了x64上是完全不能運行的,必須要重寫(連大幅度更改的機會的都沒有,逆向工程這個時候就發揮作用了)

我說的是從開發角度而言,如果單從應用需求上來說,支持更大的內存、充分支持並發揮系統資源的優勢以及等等等等,如果你沒特殊需求(比如像我這樣的系統底層需求依賴),並且有對於服務上的應用(webinf .. ),果斷換X64吧..(當然自我娛樂一下,也可以換呀 比如買了8根4G內存暫時沒辦法發揮其作用之類的 HOHO)


x64系統兼容x86的軟體,但部分x86的軟體無法在x64上進行運行...

x64系統上,一些平面2d的遊戲是不能進行運行的,包括:DNF這些...

所以,如果不想讓你的朋友、家人、室友用你的電腦玩遊戲,完全可以安裝個x64的系統...呵呵....

x64主要是穩定,支持4G以上大內存,以及更安全一些...


在2G/4G內存下,64位系統略有優勢。

  • 系統內存和磁碟佔用高一點,略輸給32位。
  • 遊戲方面幾乎沒有差距,平手。
  • 原生64位應用,尤其是壓縮/視頻編輯/Photoshop能提高20%左右性能。
  • 多開任務內存使用小勝。


  第一,設計初衷不同。64位操作系統的設計初衷是為了滿足機械設計和分析、三維動畫、視頻編輯和創作,以及科學計算和高性能計算應用程序等領域中需要大量內存和浮點性能的客戶需求。

  第二,要求配置不同。64位操作系統只能安裝在64位電腦上(CPU必須是64位的)。同時需要安裝64位常用軟體以發揮64位(x64)的最佳性能。 32位操作系統則可以安裝在32位(32位CPU)或64位(64位CPU)電腦上。當然,32位操作系統安裝在64位電腦上,其硬體恰似"大馬拉小車":64位效能就會大打折扣。

最新win7 32位和64位系統下載:Win7旗艦版系統下載

最新win8 32位和64位系統下載:Win8系統下載

最新win10 32位和64位系統下載:Win10系統下載

  第三,運算速度不同。64位CPU GPRs(General-Purpose Registers,通用寄存器)的數據寬度為64位,64位指令集可以運行64位數據指令,也就是說處理器一次可提取64位數據(只要兩個指令,一次提取8個位元組的數據),比32位(需要四個指令,一次提取4個位元組的數據)提高了一倍,理論上性能會相應提升1倍。

  第四,定址能力不同。64位處理器的優勢還體現在系統對內存的控制上。由於地址使用的是特殊的整數,因此一個ALU(算術邏輯運算器)和寄存器可以處理更大的整數,也就是更大的地址。比如,Windows Vista x64 Edition支持多達128 GB的內存和多達16 TB的虛擬內存,而32位CPU和操作系統最大只可支持4G內存。

32位系統最大支持4G內存

  第五,軟體普及不同。目前,64位常用軟體比32位常用軟體要少很多。道理很簡單:使用64位操作系統的用戶相對較少。因此,軟體開發商必須考慮 "投入產出比",將有限資金投入到更多使用群體的軟體之中。這也是為什麼64位軟體價格相對昂貴的重要原因(將成本攤入較少的發售之中)。

  在這裡特彆強調,64位電腦雖然可以安裝32位操作系統,但是32位電腦絕對不能安裝64位操作系統。這點至關重要務必牢記,以避免盲目下載和安裝。

 32位和64位操作系統是指,CPU一次處理數據的能力是32位還是64位,這裡涉及到的是處理器運算位數。簡單的說32位系統的地址匯流排是32位的,而64位系統的地址匯流排是64位的,對於這句話可能很多朋友都不好理解,其實沒關係我們往下看或許能明白些。

 目前我們可以購買到的處理器基本上都是64位系統的處理器,不過這裡的64位並不是理論上真正的64位處理器,因為現在的AMD和Inter的64位CPU並不是真正意義上的64位CPU,只是進行了部分64位的改進,比如64位的內存定址等,依然保持了32位多數技術。這裡涉及到了32位與64位系統的內存定址問題,其實這也是32位系統與64位非常大區別的一塊。一般來講32位的CPU對於我們來講是最理性的CPU,也是目前絕大多數軟體開發設計的平台,在內存定址方面32位系統的最大內存定址空間是2的32次方= 4294967296(bit) = 4(GB)左右。而64位系統最大內存定址空間是2的64次方= 4294967296(bit)的32次方 =數值大於1億GB。這裡也就是說32位系統的處理器最大隻支持到4G內存,而64位系統最大支持的內存高達億位數。

 如果目前的處理器全是理論的64位,那麼現在市場上的軟體將全部被淘汰或全部需要重新設計,顯然這是不可能的,這也還需要相當一段時間去發展。目前的64位的操作系統針對64位CPU設計的,增加了一些64位的指令,但還是和32兼容的。對於我們普通用戶來講64位系統意義不大。真正的64位技術是針對大型機械或大型服務站開發使用的。目前我們可以在市場上可以看到一些win7系統使用的是64位操作系統,其實理論上也算不上,只是在內存定址一小塊上做了一些64位改進,我們也可以看到目前一些win764位系統雖然兼容32位,但依然安裝不了部分遊戲軟體,所以筆者目前不建議大家裝64位系統。

下面在來說說32位和64位操作系統的區別

首先很明顯的一點上面也說了,最大支持的內存大小不同,地址匯流排設計不同等,下面簡單概括為以下幾點:

第一,設計初衷不同。64位操作系統的設計初衷是:滿足機械設計和分析、三維動畫、視頻編輯和創作,以及科學計算和高性能計算應用程序等領域中需要大量內存和浮點性能的客戶需求。換句簡明的話說就是:它們是高科技人員使用本行業特殊軟體的運行平台。而32位操作系統是為普通用戶設計的。

第二,要求配置不同。64位操作系統只能安裝在64位電腦上(CPU必須是64位的)。同時需要安裝64位常用軟體以發揮64位(x64)的最佳性能。32位操作系統則可以安裝在32位(32位CPU)或64位(64位CPU)電腦上。當然,32位操作系統安裝在64位電腦上,其硬體恰似「大馬拉小車」:64位效能就會大打折扣。

第三,運算速度不同。64位CPU GPRs(General-Purpose Registers,通用寄存器)的數據寬度為64位,64位指令集可以運行64位數據指令,也就是說處理器一次可提取64位數據(只要兩個指令,一次提取8個位元組的數據),比32位(需要四個指令,一次提取4個位元組的數據)提高了一倍,理論上性能會相應提升1倍。計算機

第四,定址能力不同。64位處理器的優勢還體現在系統對內存的控制上。由於地址使用的是特殊的整數,因此一個ALU(算術邏輯運算器)和寄存器可以處理更大的整數,也就是更大的地址。比如,Windows Vista x64 Edition支持多達128 GB的內存和多達16 TB的虛擬內存,而32位CPU和操作系統最大只可支持4G內存。

第五,軟體普及不同。目前,64位常用軟體比32位常用軟體,要少得多的多。道理很簡單:使用64位操作系統的用戶相對較少。因此,軟體開發商必須考慮「投入產出比」,將有限資金投入到更多使用群體的軟體之中。這也是為什麼64位軟體價格相對昂貴的重要原因。


微軟官方解釋:揭開 64 位 Windows 的神秘面紗


我只想知道128位的CPU和系統什麼時候能像64位一樣流行

那時候人們會問:128位系統和 64位系統相比,有哪些優缺點?

我能感覺到的最直觀的一點是Debian6 32位能在64M的小內存VPS上跑一個Wordpress網站

甚至有人在32M的VPS上跑wordpress

64位就算了,這點內存開機就沒了

所以內存真的很小的話就32位,512m以上我感覺64位就沒有問題了(無GUI)


32位佔用內存小,但是最大支持3.75G內存

而64位佔用內存要比32位大些,但是支持大於4G以上的內存

U幫忙U盤啟動盤製作工具,最好用!!


在閱讀下文前,得先理解:RAM,CPU和OS。

64-bit OS為4GB(2^{32} B)以上 RAM,64-bit CPU的機器而設計,當然也可以裝在內存不足4GB或32-bit CPU的機器上,它往後兼容(backward compatible with)大多數現有32-bit應用程序,這使得它的普及十分順利。

64-bit OS它的資源內耗相對32-bit OS稍高(並不總是,可通過優化避免),但對於高配機器來說也就無所謂了。當然,對於對菜市場爭斤論兩的市民來說,當然是32-bit OS好。

  • 對於想發揮大內存(指4GB以上),64-bit CPU優勢的用戶來說,64-bit OS是不二之選。

  • 而對於一個舊機器(RAM不足4GB而且將來而不會升級為4GB以上,CPU也不會升級為64bit,且不考慮安裝僅提供64-bit版的應用程序),為效率考慮,最好老老實實裝32-bit OS,64-bit OS不適合也沒必要。

  • 如果你在創建虛擬機時,當時分配2GB RAM,打算將來吧RAM加到4G以上,為擴展性考慮,此時應裝64-bit OS。

  • 如果你在創建虛擬機時,當時分配2GB RAM,打算將來安裝專為64-bit OS而編譯的應用程序,為兼容性考慮,此時得裝64-bit OS。

優點和缺點就在上述分用例討論中。


主要是內存定址能力的差別,32位處理4G以上內存是有相當的難度的。

對於應用程序來說,如果沒有採用不良的彙編優化和位操作,使用規範的C/C++編寫,應該沒有什麼兼容性問題。

可以收集一下你所使用的軟體信息,我想新版本的軟體都支持64位。


我有計算機 潔癖,考慮到當前很多軟體還只有32位的,所以無論是w7 還是*nux ,目前都只安裝 32位, 64位的話會安裝很多兼容X86的庫文件,這樣的話總是有種冗餘的感覺,而且也沒覺得64位下速度提升多少,不做那種科學計算,目前還是覺得沒必要, linux下 的 PAE的內核可以識別超過4G的內存


我稍作補充,,未來的計算機如果不被雲系統取代,肯定是64位的天下,現在的電腦發展這麼慢很大因素就是微軟的的壟斷:

  1. 首先,目前所有的系統引導都是用MBR,直接限制了硬碟只能是1T之內,並且無法使用超高性能超大容量的固態硬碟,類unix系統就沒有這個煩惱,完全支持GPT,btw:蘋果電腦一直都是用GPT,不知道是超前還是說它正常,因為現在固態硬碟生產條件已經非常成熟,而且價格不會太貴。
  2. Windows也可以用GPT引導,但是只能裝64位的操作系統,Windows的壟斷地位就岌岌可危了,因為win下64位軟體屈指可數,而且最致命的是驅動。


最直接的優點:內存超過4G的那部分終於可以用上。

最直接的缺點:C盤多出了一個文件夾叫做Program Files (x86)。一開始我還以為是中毒了。

To @依雲 ,只看第一句了,我這答案對題主沒啥幫助。自點沒有幫助好了。


64位,對大部分人來說,就是被忽悠的。包括本人。說實話,就目前應用而言,比32位,真的沒啥優勢。反而內存和存儲空間需要大很多。搞個win7更新,結果,8G內存會用盡。其實,一般的應用32位完全夠了。速度真沒覺得比32位有什麼優勢。大量軟體還是32位的!


64位相對32位,主要是內存定址範圍更大了,當然32位的操作系統是可以通過PAE技術突破限制支持最大64GB內存,但是單個進程的內存定址有最大3.25GB的限制,64位單進程可以訪問超過4GB內存空間,64位和32位程序在同一64位機器中執行速度差別不大,差別主要在於32位定址在64位機器上是模擬出來的,理論上定址速度差一點點,演算法上要多執行一點東西,那點cpu計算量相對於內存訪問速度的差別幾乎可以忽略,但是64位程序的地址指針都是8位元組比32位多一倍,如果大量內存分配需要耗費更多的內存,比如一個鏈表實現64位在指針存儲上就要多一倍空間,如果內存小建議還是32位的好,32位的軟體在64位系統上幾乎沒有速度差別,現在的操作系統主流是64位,32位系統逐漸會消失,但是我們可以對小型軟體推薦32位程序以節省內存浪費


推薦閱讀:

windows操作系統自帶的軟體為什麼總是做不好?
win8 何時對2k以上屏進行優化?
《The Big Bang Theory 》里的 Sheldon 為什麼沒有使用 Mac?
win10是如何做到相比win7開機速度大幅度提升的?
shell、操作系統、內核是一個東西嗎?

TAG:操作系統 | 64位操作系統 |