32位linux系统 int,获得Linux系统的位数(64 or 32)

今天一个朋友问我ESX作为一个以Linux为核心的系统,它的系统位数到底是32位还是64位,而我的实际机房生产环境中所跑的ESX为4.0系统,硬件平台为纯64位计算的HP DL380 G6与DL580 G5。

获取Linux的系统位数如下:

一、采用最常用uname -a命令,得到类似如下2个结果(来自一个32位CentOS与64位ESX)

CentOS:Linux centos.is36.com 2.6.18.8 #2 Thu Sep 24 14:29:28 GMT 2009 i686 i686 i386 GNU/Linux

ESX:Linux esx.is36.com 2.6.18-128.ESX #1 Fri Apr 10 00:08:17 PDT 2009 x86_64 x86_64 x86_64 GNU/Linux

从上面会看到较为明显的区别,一个是i386,另外一个是x86_64。

二、采用"getconf WORD_BIT"和"getconf LONG_BIT"获得word和long的位数,这2个类型的长度可以决定系统的位数,具体如下:

CentOS:执行如上2个命令,均返回32。

ESX:执行如上2个命令,分别返回32与64。

32位的系统中int类型和long类型一般都是4字节的。如果你的C语言教材里写的不是这样,劝你们老师换换教材吧。

64位的系统中int类型还是4字节的,但是long已变成了8字节的啦。这个教材里没写没关系,写了说明编者追踪最新的技术。

三、在shell下执行“echo $HOSTTYPE”获得系统位数信息。

CentOS:返回i686

ESX:返回x86_64

因为测试的ESX为4.0版,之前测试过的3.5版应该为32位系统(未经测试)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值