免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 51731 | 回复: 5
打印 上一主题 下一主题

[安装配置] 如何实现32位系统安装64位软件 (请教) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-04-05 09:01 |只看该作者 |倒序浏览
如何实现32位系统安装64位软件 (请教)

论坛徽章:
0
2 [报告]
发表于 2006-04-05 09:51 |只看该作者
搞定了, 不过是将系统转到64位了

AIX UNIX 5.2

1.需要的文件集
bos.64bit是基本操作系统中构成64位运行环境的文件集。如果系统中未安装bos.64bit文件集,将没有/etc/methods/cfg64文件。若/etc/methods/cfg64文件不存在,则SMIT菜单中将没有允许或禁止64位环境的选项。
可使用命令lslpp -l bos.64bit查看该文件集是否已被安装。若未安装,则可从AIX4.3.3的安装盘中加装该文件集。但安装了该文件集并不能保证系统就能够运行64位应用,系统是否能运行64位应用还取决于硬件环境。安装了bos.64bit文件集的32位机器上,虽然能够编译64位应用程序,但却不能运行该应用。

2.硬件要求
要运行64位应用,必须要具备64位的硬件环境。在AIX4.3.3中,使用下述步骤确定系统是32位还是64位的硬件结构:
(1)以root用户身份登录
(2)执行命令:
# bootinfo -y
上述命令返回32或64,对应系统硬件结构为32位或64位。
另外,可以在任何版本的AIX中使用命令:
# lsattr -El proc0
该命令将返回系统处理器的类型。64位处理器的类型列示如下:
PowerPC_RS64 
PowerPC_RS64 II 
PowerPC_RS64 III 
PowerPC_Power3 
PowerPC_Power3 II
可以对应上面的类型列表确定系统的硬件结构是32位还是64位。

3.内核扩展与64位内核
确定系统是否加载了64位的内核扩展,使用命令:
# genkex |grep 64
若系统加载了64位的内核扩展,将返回类似下一行的信息:
149bf58 a3ec /usr/lib/drivers/syscalls64.ext
但加载了64位的内核扩展并不说明该系统的内核为64位,只有从AIX5.1开始才有64位内核。
64位内核扩展只是允许在32位内核中编译64位应用。如果32位内核具有64位处理器,则syscalls64.ext文件集将允许运行64位应用。但在AIX5.1中,64位的内核和64位的处理器将使64位的应用具有更好的性能。
在AIX5.1中,将32位的内核改为64位的内核,可以执行下述命令:
# ln -sf /usr/lib/boot/unix_64 /unix
# ln -sf /usr/lib/boot/unix_64 /usr/lib/boot/unix
# lslv -m hd5
# bosboot -ad /dev/<启动硬盘名>
# shutdown -Fr

在AIX5.1中,将64位的内核改为32位的内核,可以执行下述命令:
# ln -sf /usr/lib/boot/unix_mp /unix
# ln -sf /usr/lib/boot/unix_mp /usr/lib/boot/unix
# lslv -m hd5
# bosboot -ad /dev/<启动硬盘名>
# shutdown -Fr

4.32位与64位的兼容性
大多数情况下,在64位的硬件结构上运行32位的应用是没有问题的,因为64位的硬件兼容64位及32位的软件。但是,32位的硬件上不能运行64位的软件。
而且,AIX 4.3.3上的32位应用可直接运行于AIX 5.1上,但AIX 4.3.3上的64位应用必须在AIX 5.1上经过重新编译后才可运行。

论坛徽章:
0
3 [报告]
发表于 2006-04-05 10:05 |只看该作者
没错,结论正确,32位的系统是不能安装64软件的。而且32位的硬件是不能使用64位内核的。但是在开发过程中,却可以在32位的系统上面开发64位应用。

论坛徽章:
0
4 [报告]
发表于 2006-04-05 12:02 |只看该作者
Some combinations of 32/64 will work, some won't:

              1   2    3  4   5    6   7   8
           -- -- -- -- -- -- -- -- ------------
        App 32 32 32 32 64 64 64 64
        Ken 32 32 64 64 32 32 64 64
        H/W32 64 32 64 32 64 32 64

Combinations 3, 5, 7 are invalid.
Combinations 4, 8 require AIX 5.1 (for the 64-bit kernel).

[ 本帖最后由 alansbb 于 2006-4-5 12:03 编辑 ]

论坛徽章:
0
5 [报告]
发表于 2008-09-11 14:10 |只看该作者
原帖由 老袁 于 2006-4-5 10:05 发表
没错,结论正确,32位的系统是不能安装64软件的。而且32位的硬件是不能使用64位内核的。但是在开发过程中,却可以在32位的系统上面开发64位应用。

那调试怎么办呀

论坛徽章:
0
6 [报告]
发表于 2008-09-11 19:10 |只看该作者
能否执行64位只与硬件有关,只要是64位的硬件,无论内核是否64位都可以执行,只不过有些命令自已判断内核是否是64位的,比如vmstat64等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP