
Linux/Unix 上如何轉換到 64 位元? Windows 世界似乎仍然有問題,我很好奇它在 *nix 世界中是如何處理的。
答案1
使核心成為 64 位元所需的工作已完成嗚嗚嗚不久前使用 DEC Alpha 系統。然而,程序是另一回事。
到目前為止,我所看到的普遍共識似乎是:
- 具有混合二進位檔案的系統的單獨
/lib
目錄/lib64
- 編譯為 64 位元;如果編譯失敗,請重新編譯為 32 位,直到可以清除原始碼為 64 位元。
除此之外,您真的不會看到混合 32/64 位元建置帶來的大量「悲傷」。
答案2
答案3
由於 Linux 發行版大多是開源的,因此已經完成了很大的轉換。除非您使用專有軟體(例如Skype),否則您可以運行純64位元系統,沒有任何缺點。
然而,恕我直言,真正的區別是更專有與開放,然後是unix與windows,因為它通常是首先移植的開源軟體(一些志願者需要重新編譯某些東西- 也許修復一些編譯問題) - 或者在大多數情況下不移植一切都只是重新編譯;) - 以及最後移植的財產。
另外,在 Linux 上,您可能還有儲存庫,因此安裝會自動處理 - 您無需選擇 64 位元或 32 位元版本(系統會自動選擇您的版本)。在 Windows 上下載程式並具有單獨的 64 位元和 32 位元版本:
- 將伺服器上的檔案大小加倍
- 要求使用者知道他/她的版本。或者甚至他們在某些方面有所不同
我想這就是 Windows 二進位檔案通常為 32 位元的原因 - 它是一刀切的,並不是每個人都使用 64 位元版本。
答案4
實際上,請嘗試 ACM Queue 上的“The Long Road to 64-bits”: http://queue.acm.org/detail.cfm?id=1165766 後來 ACM 通訊部發現了這個消息。第一款 64 位元微處理器是 MIPS R4000,在 SGI Crimson 1Q1992 出貨,Dec Alphas 同年稍後出貨。
R4000 最初以 32 位元模式運行,後來以 64/32 模式運行,即 64 位元作業系統、64 或 32 位元用戶代碼。 Alphas 始終僅以 64 位元運行 UNIX(這是一個合理的選擇,因為沒有 32 位元應用程式的安裝基礎。)
20 世紀 90 年代後期,SGI 為 64 位元 Linux(在 Itanium 上運行)做出了貢獻,大約在 XFS 移植到 Linux 的時候(它確實需要 64 位元)。