linux64
,最大好處就是記憶體不在有
4gb的限制(32位
linux
只有4g
的虛擬位址定址空間,可以克服這個限制,但是實現起來會比較複雜,得不償失)。
資料模型
ilp32
lp64
llp64
ilp64
char 8
8 88
short 16
16 16
16int 32
32 32
64long 32
64 32
64long long 64
64 64
64 指標
32 64
64 64
linux64
位,使用
lp64
標準,做**移植時需要注意一些地方。
struct
或者union
的大小,會隨著公升級到
64位系統,發生改變,特別是邊界對齊。原來
32位的資料型別,在
64位系統上,也許會需要補齊
64位;
需要特別注意的地方總結了一下,大概下面幾點: 1.
特別注意改變了大小的資料型別:
long
,指標;
2.不能像
32位系統上,用
int來儲存指標;
3.數字常量,需要做改變,比方說
0xffffffff在32
位機器上如果是
long為-1
,但是在
64位會被當成是乙個正數,這個需要特殊考慮;
4.為了更好的**移植性,有些型別盡量使用
linux
定義好的平台無關的型別,如
size_t
,ptrdiff_t
,intptr_t;
5.printf
列印指標的引數格式應該為%p(
32位上
%x也可以)。
64位平台簡介
目前最流行的兩種64bit微處理器架構 ia 64 intel 64 ia 64 由intel和hewlett packard公司聯合開發,被使用在 itanium和 itanium 2微處理器之上。intel 64 又稱em64t amd64 ia 32e x86 64 aa 64 x64 ham...
64位平台轉32位平台總結
一般都是32位平台轉到64位平台,可是我們剛好相。我們公司最近做的分布式檔案系統,以前是在 64位平台下 以為現在的伺服器很少有 32位平台,也就沒有過多的考慮,現在由於客戶需要,不得不修改至 32位平台。現在總結如下,共大家學習。1 資料型別的定義 一般我們都用 typedef 定義資料型別 ty...
linux 64位下的 mongodb 安裝
wget tar zxvfmongodb linux x86 64 2.0.4.tgz mv mongodb linux x86 64 2.0.4.tgz mongodb2.0.4 為了方便,把它從命名的更加簡潔些 建立mongodb存放的資料檔案 日子檔案 mongodb db mongodb l...