32位與64位的區別

如果你的“支持64位”指支持64位的可執行文件或者“支持64位內存尋址”,那麼很顯然,一個32位的操作系統無法支持64位的可執行文件,由於硬件的限制也不支持64位虛擬內存殉職。

  如果你的“支持64位”指支持64位計算,那麼這取決於你的應用程序,操作系統並不能干涉應用程序進行64位的計算。

  如果你的“支持64位”指文件系統等支持64位尋址、64位時間,那麼答案是肯定的,*BSD在上個世紀就已經採用64位時間和文件系統編址了。

  最後,FreeBSD提供了64位版本(對於x86架構的amd64/em64T平臺而言,amd64),這個版本支持前面所有的“64位”

  所謂16位、32位、64位等術語有時指總線寬度,有時指指令寬度(在定長指令集中),而在操作系統理論中主要是指內存尋址的寬度。如果內存的尋址寬度是 16位,那麼每一個內存地址可以用16個二進制位來表示,也就是說可以在64KB的範圍內尋址。同樣道理32位的寬度對應4GB的尋址範圍,64位的寬度對應16 Exabyte的尋址範圍。內存尋址範圍並非僅僅是對操作系統而言的,其他類型的軟件的設計有時也會被尋址範圍而影響。但是在操作系統的設計與實現中,尋址範圍卻有着更爲重要的意義。在早期的16位操作系統中,由於64KB的尋址範圍太小,大都都採用“段”加“線性地址”的二維平面地址空間的設計。分配內存時通常需要考慮“段置換”的問題,同時,應用程序所能夠使用的地址空間也往往有比較小的上限。 在32位操作系統中, 4GB的尋址範圍對於一般應用程序來說是綽綽有餘的,因而,通常使用一維的線性地址空間,而不使用“段”。

  64位計算與32位計算的最大區別在於“尋址能力”和“數據處理能力”。舉一個簡單的例子:一個5位的小計算器能夠計算的最大數字範圍是“99, 999”,對於日常計算家用、買菜這樣的工作應該夠用了,但是對於銀行、商場、科研、設計等需要處理“大量”、“複雜”數據的場合這樣的計算器顯然不能勝任,需要10位甚至12位的計算器。64位計算平臺基於64位長的“寄存器”,提供比32位更大的數據帶寬和尋址能力。面對今天日益複雜的應用程序和日益龐大的數據量,64位服務器的普及應用愈來愈迫切。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章