如何判断Linux是c 判断32位还是64位位

经常参与各类话题的讨论,发帖内容较有主见
经常帮助其他会员答疑
活跃且尽责职守的版主
为论坛做出突出贡献的会员
站长推荐 /6
about云|新出视频,openstack零基础入门,解决你ping不通外网难题
云计算hadoop视频大全(新增 yarn、flume|storm、hadoop一套视频
视频资料大优惠
大数据零基础由入门到实战
阶段1:hadoop零基础入门基础篇
阶段2:hadoop2入门
阶段3:大数据非hadoop系列课程
阶段4:项目实战篇
阶段5:大数据高级系列应用课程
阶段6:工作实用系列教程
等待验证会员请验证邮箱
新手获取积分方法
Powered byC++判断操作系统是32位还是64位
C++判断操作系统是32位还是64位
  C++判断操作系统是32位还是64位:
BOOL&Is64Bit_OS()&&
BOOL&bRetVal&=&FALSE;&&
&&&&SYSTEM_INFO&si&=&{&0&};&&
&&&&LPFN_PGNSI&pGNSI&=&(LPFN_PGNSI)&GetProcAddress(GetModuleHandle(_T("kernel32.dll")),&"GetNativeSystemInfo");&&
if&(pGNSI&==&NULL)&&
return&FALSE;&&
&&&&pGNSI(&si);&&
if&(si.wProcessorArchitecture&==&PROCESSOR_ARCHITECTURE_AMD64&||&&&
&&&&si.wProcessorArchitecture&==&PROCESSOR_ARCHITECTURE_IA64&)&&
&&&&&&&&bRetVal&=&TRUE;&&
H3C认证Java认证Oracle认证
基础英语软考英语项目管理英语职场英语
.NETPowerBuilderWeb开发游戏开发Perl
二级模拟试题一级模拟试题一级考试经验四级考试资料
软件测试软件外包系统分析与建模敏捷开发
法律法规历年试题软考英语网络管理员系统架构设计师信息系统监理师
高级通信工程师考试大纲设备环境综合能力
路由技术网络存储无线网络网络设备
CPMP考试prince2认证项目范围管理项目配置管理项目管理案例项目经理项目干系人管理
职称考试题目
招生信息考研政治
网络安全安全设置工具使用手机安全
生物识别传感器物联网传输层物联网前沿技术物联网案例分析
Java核心技术J2ME教程
Linux系统管理Linux编程Linux安全AIX教程
Windows系统管理Windows教程Windows网络管理Windows故障
数据库开发Sybase数据库Informix数据库
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&如何判断Unix系统的一个库文件是32位还是64位的_Linux教程_Linux公社-Linux系统门户网站
你好,游客
如何判断Unix系统的一个库文件是32位还是64位的
来源:CSDN &
作者:coolmasoft
某些时候,我们需要知道操作系统的位数,或者配置插件的时候需要知道主程序的位数(例如配置apache插件的时候需要知道apache的位数以便配置相应的插件),最简单的办法就是执行file命令,如:
# file libnss1_files-2.2.4.so&
libnss1_files-2.2.4.so: ELF 32-bit LSB shared object,Intel80386, version 1,not stripped&
# file libtrsbean.so&
libtrsbean.so: ELF 64-bit LSB shared object, version 1,not stripped
32位的没有说明
#file /usr/ccs/lib/mcrt0.o&
/usr/ccs/lib/mcrt0.o:&
executable (RISC System/6000)orobjectmodulenot stripped
#file /usr/ccs/lib/mcrt0_64.o&
/usr/ccs/lib/mcrt0_64.o:& & & & 64-bit XCOFF executable orobjectmodulenot stripped
# file libmp.so&
libmp.so:& & &
ELF 32-位 MSB 动态库 SPARC 版本1,动态链接,没有除去
另外通过二进制查看命令od查看相关的库文件也可以解决此问题,但难度大,也不保险。下面给出在不同系统中的结果,以供参考(由于只在某一版本的操作系统下面做的测试,下面的结果不可能适应所有的所有版本的系统)
32位第4段是0101;64位第4段是0102 。-h 表示按16进制2字节整数查看,整数高低位也调整了(如7f45变成457f); -N 10 表示查看10个字节。
#od -h -N 10 32.so&
& & & 0000000457f464c&0101&00010000
#od -h& -N 10& 64.so&
& & & 0000000457f464c&0102&0001& 0000
和Linux差不多,只是Linux的 -h 参数变成 -x。另外显示结果也不太一样,Solaris是按照字节顺序显示的,Linux是按照16进制2字节整数查看,会把高低位调整了。
#od -x -N 10& 32.so& & & & & &
00000007f454c46010101000000
#od -x -N 10& 64.so& & & & & &
00000007f454c46010201000000
32位是01df ;64位是01f7
#od -N 10 -h crt0_r.o&
0000000& 01df&00033d65462a0000
#od -N 10 -h mcrt0_64.o&
& & & 0000000& 01f7&00033fe27fd50000
没有实际操作,只是通过UltraEdit打开两个文件xxx32.sl和xxx64.sl并比较前面几个字节(HP库文件是.sl结尾不是.so结尾的)。发现64位的文件和Linux/Solaris的类似。
0210010e051240
7f454c46020201
本文永久更新链接地址:
相关资讯 & & &
& (10/19/:58)
& (07/13/:47)
& (06/18/:36)
& (01/23/:49)
& (06/29/:05)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款如何识别CPU是32位还是64位_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
如何识别CPU是32位还是64位
上传于||暂无简介
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 判断进程32位还是64位 的文章

 

随机推荐