-
通用二進制
鎖定
- 中文名
- 通用二進制
- 外文名
- Universal binary
- 發明者
- 蘋果電腦公司
- 公開時間
- 2005
- 發佈地點
- 世界開發者大會(WWDC)
- 優 點
- 實現無損的本地程序運行速度
通用二進制概要
通用二進制代碼有兩種基本類型。一種類型就是簡單提供兩種獨立的二進制代碼,一個用來對應x86架構,一個用來對應PowerPC架構。但是對於不熟悉代碼的普通軟件使用者來説,在購買和使用的時候,可能搞不清二者區別。另外一種類型就是隻編寫一個架構的代碼,當另外一種處理環境時讓系統自動調用模擬器運行。這會導致運行速度下降,一般是作為“通用二進制”或者“特別連編二進制”出現之前暫時使用的折衷辦法。(參見Rosetta.)
通用二進制原理
因為需要儲存多種代碼,通用二進制應用程序通常比單一平台二進制的程序要大,但是
[1]
由於兩種架構有共通的非執行資源,所以並不會達到單一版本的兩倍之多。而且由於執行中只調用一部分代碼,運行起來也不需要額外的內存。
截至2006年10月,蘋果公司的Xcode是唯一一個可以編譯通用二進制代碼的GUI工具。一個使用processor-independence開發的簡單應用程序只需要改動很少的部分就可以實現通用二進制。但是對於那些基於要發揮一種架構特長的複雜程序來説,修改代碼通過連編就是一個比較複雜的工程。 使用其他開發工具製作的應用程序需要額外的修改。正因為這些原因,導致目前英特爾麥金塔電腦和那些第三方製作的通用二進制軟件不能同步的現象。而蘋果在硬件方面的轉換比預定計劃提前了好幾個月,也是造成這種差距的另外一個因素。
通用二進制案例
通用二進制通用應用程序
儘管如此,一些高端的常用應用程序還沒有通用二進制版本,比如微軟公司的Microsoft Office 2004等等。這些產品目前必須使用Rosetta編譯器在英特爾麥金塔電腦上運行。結果導致目前的Adobe Photoshop版本在英特爾麥金塔電腦上運行,要比在PowerPC處理器的麥金塔電腦,甚至比視窗系統中運行還要緩慢。Adobe公司已經聲明,不會發布現有產品的通用二進制版本,而是轉而在未來發布的新版本中進行通用二進制化。
- 參考資料
-
- 1. sensagent
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:12次歷史版本
- 最近更新: qetdrbqeod