Linux下32位和64位作業系統的區別

2021-10-06 16:11:28 字數 737 閱讀 8123

一.我們所謂的32位、64位指的是cpu的gprs(general-purpose registers,通用暫存器)的資料寬度。64位的cpu較之32位可以進行更大範圍的整數運算;可以支援更大的記憶體。不能因為數字上的變化,而簡單的認為64bit處理器的效能是32bit處理器效能的兩倍。實際上在32bit應用下,32bit處理器的效能甚至會更強,即使是64bit處理器,目前情況下也是在32bit應用下效能更強。

二.32位和64位作業系統是指:cpu一次處理資料的能力是32位還是64位。現在市場上的cpu一般都是64位的,但是這些cpu並不是真正意義上的64 位cpu,裡面依然保留了大部分32位的技術,只是進行了部分64位的改進。32位和64位的區別還涉及了記憶體的定址方面,32位系統的最大定址空間是2 的32次方= 4294967296(bit)= 4(gb)左右,而64位系統的最大定址空間的定址空間則達到了2的64次方= 4294967296(bit)的32次方=數值大於1億gb。換而言之,就是說32位系統的處理器最大只支援到4g記憶體,而64位系統最大支援的記憶體高達億位數。

三.作業系統雖然區分32位和64位的,但是目前主流的計算機硬體大多都是64位的cpu,所以都支援安裝64位的作業系統,當然安裝32位作業系統也是可以的,至於安裝32位還是64位系統主要看我們的計算機記憶體有多大,如果超過4g就安裝64位,否則就安裝32位反而會更好。

四.linux下檢視系統是32位還是64位使用命令 uname -a 如果顯示有x86_64則是64位系統,而顯示 i386,i586或者i686則是32位系統。

32位和64位下資料大小

32位下和64位下資料大小的不同 最近在linux下移植程式時遇到了乙個問題,將32位機下的程式移植到64位上,在用long型讀入檔案時發生了錯誤,讀出來的是0,後經測試原來是在32位機下和64機下某些資料型別表示的不一樣。測試程式如下 include int main 在windows下,是這樣的...

在64位linux下編譯32位程式

一般情況下我們最好是在乙個平台上編譯本平台的二進位制程式,比如在32位平台上編譯32位程式而在64位平台上編譯64位程式。現在64位的系統 這裡主要指x86 64系統,包括amd64和intel的em64t 已經開始廣泛的使用起來了,甚至於你現在要是想買32位的處理器根本就沒有。64位的系統在效能和...

在64位linux下編譯32位程式

留存備份 一般情況下我們最好是在乙個平台上編譯本平台的二進位制程式,比如在32位平台上編譯32位程式而在64位平台上編譯64位程式。現在64位的系統 這裡主要指x86 64系統,包括amd64和intel的em64t 已經開始廣泛的使用起來了,甚至於你現在要是想買32位的處理器根本就沒有。64位的系...