64位操作系统能64位系统运行32位软件件吗

查看: 16510|回复: 7
在64位操作系统上***oracle 11g 32位的软件,会有什么限制么?
论坛徽章:6
& && &在64位的操作系统上是允许***32位的oracle软件的,但我想知道在64位的操作系统里***32位oracle软件和***64位的oracle软件会有些什么区别呢?会不会***32位oracle软件与***64位oracle相比有什么缺点呢?假如是用来做生产库的话,能用32位的oracle软件来取代***64位的oracle软件么?
& && &现在已经发现的一点就是在配置ODBC的时候,直接在控制面板里的ODBC是看不到oracle驱动的,在64位系统下,控制面板所提供的ODBC配置程序默认是64位的,因此对于32位的应用程序,会出现无法找到数据源的问题。解决方法:使用32位的ODBC配置程序,路径在windows/syswow64下,名称为:odbcad32.exe
& && &除此之外还会有些其它什么方面的问题或是限制呢?
论坛徽章:6
在32位操作系统里,单进程好像最大能使用2G内存,不知道64位操作系统使用32位程序有没有这种限制?如果有的话,这个也算是影响较大的一点了
论坛徽章:24
认证徽章论坛徽章:15
如果是在64位环境当中使用PL/SQL developer的话,因为这个软件只有32位的所以需要对应32位的oci.dll
除此之外我觉得在生产系统的64位OS上***32位oracle软件的想法 都是耍流氓~~~
论坛徽章:6
lnwxzyp 发表于
如果是在64位环境当中使用PL/SQL developer的话,因为这个软件只有32位的所以需要对应32位的oci.dll
但确实我发现我们的一些项目中就是这么做的,所以才有此一问,因为之前去实施的可能就是开发人员,他们平时开发环境就是装的32位oracle,所以很自然的就这么干了。
论坛徽章:112
为什么要在64-bit上装32-bit的呢?
论坛徽章:6
Toms_zhang 发表于
为什么要在64-bit上装32-bit的呢?
不是我要这么装,是已经有实施人员在外边这么做了,数据库已经跑起来了,当然数据量比较小,暂时感觉不出什么问题,只是想知道在64位系统下装32位数据库到底会有哪些问题。
论坛徽章:74
32位数据库的限制都有
至于兼容性,那要问微软和oracle
itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有    
 北京市公安局海淀分局网监中心备案编号: 广播电视节目制作经营许可证:编号(京)字第1149号[转载]关于64位linux系统无法执行32位程序的解决方法
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。64位linux不能运行32位程序,问题解决方案
交叉编译是嵌入式开发非常重要的(应该说是必须的)一个环节,但是最近在实体Linux机器上使用交叉编译工具却经常遇到一个问题:交叉编译工具版本正确,***步骤正确,环境变量设置也正确,但是在运行arm-linu-gcc -v时却一直报bash: /opt/arm-2009q3/bin/arm-linux-gcc: 没有那个文件或目录的错误,很是郁闷,一番google终于发现了问题原因:我的Linux是64位的,但是交叉编译工具是32位的,因此不能运行。
用file命令查看arm-none-linux-gnueabi-gcc 会出现如下信息。
arm-none-linux-gnueabi-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.2.5, stripped
而我的操作系统 uname -a
Linux kevin-TP 4.4.0-36-generic #55-Ubuntu SMP Thu Aug 11 18:01:55 UTC
x86_64 x86_64 GNU/Linux
1、自己编译适合自己系统的交叉编译工具,觉得太麻烦,遂放弃。
2、寻找64位的交叉编译工具,由于我的交叉编译工具是开发板厂商提供的,很多DEMO都是由它编译出来的,如果自己更换如果编译途中出现错误很难确定是交叉编译工具的问题还是代码的问题,风险较高,放弃。
3、重新***32位的linux,由于笔者需要编译Android源码,编译过的都知道,硬盘空间至少40G,内存要16G+,而32位系统只能管理4G的内存空间,如果重新***32位linux将会使本子的性能大打折扣,也放弃了。
4、最后一种方式就是在64位机器上***32位程序运行库,由于64位CPU兼容32位指令集,因此此方式最为合适。
***32位运行库
ubuntu(debain系列)的linux可以按照以下方式***。(注意前边的命令提示符是&#&也就是说我是用root运行的,如果不愿意用root运行的话需要加 sudo)
# dpkg &add-architecture i386
#apt install libc6:i386
***完成后,重新运行arm-linux-gcc -v
那久违的版本信息出现,OK,问题解决。
这个问题经常遇到,又经常忘记,身边的朋友在我的怂恿之下把本子换成linux后也经常遇到此问题,所以备忘下,也和遇到同样问题的同道们分享。
***32位运行库的解决方案参考了:
表示感谢和敬意。
本文永久更新地址:
------分隔线----------------------------

参考资料

 

随机推荐