如何在64位的系统上使用32位的ODBC驱动 32位的应用程序在64位的系统上运行,用ODBC连接64位的...

作者&投稿:郸宽 (若有异议请与网页底部的电邮联系)
在64位Windows系统中,默认数据源(ODBC)是64位的,包括控制面板-》管理工具-》数据源 或在运行中直接运行ODBCAD32程序。如果客户端是32位应用程序,仍然需要配置32位ODBC数据源,这时需要运行C:\Windows\SysWOW64\odbcad32.exe来启动ODBC数据源管理器,添加32位的ODBC数据源。

64位Windows系统如何配置32位ODBC数据源~

在64位Windows系统中,默认数据源(ODBC)是64位的,包括控制面板-》管理工具-》数据源 或在运行中直接运行ODBCAD32程序。如果客户端是32位应用程序,仍然需要配置32位ODBC数据源,这时需要运行C:\Windows\SysWOW64\odbcad32.exe来启动ODBC数据源管理器,添加32位的ODBC数据源。
64位操作系统

64位操作系统是指特别为64位架构计算机系统而设计的操作系统。64位操作系统的优点,在于能够利用64位处理器的优势,在处理多媒体内容时能够有更佳的表现。
1简介
在计算机架构中,64位整数、内存地址或其他数据单元,是指它们最高达到64位(8字节)宽。此外,64位CPU和算术逻辑单元架构是以寄存器、内存总线或者数据总线的大小为基准。 64 位CPU在1960年代,便已存在于超级计算机,且早在1990年代,就有以 RISC 为基础的工作站和服务器。2003年才以 x86-64 和 64 位 PowerPC 处理器架构的形式引入到(在此之前是 32 位)个人计算机领域的主流。
2概述
64位操作系统是指特别为64位架构计算机系统而设计的操作系统。
64位操作系统最早在中小型计算机上实现,主要是一些Unix系统。此后英特尔和惠普公司合作研制的IA-6464位处理器(代号 Itanium 2)推出后,出现了此平台上的64位Linux及微软Windows操作系统(即基于IA-64的Windows XP 64位版本)。之后AMD推出了64位的X86-64架构CPU,很快就在Linux平台得到支持,并且微软也提供了64位版本的Windows XP操作系统(全称Windows XP Professional x64),使得IA-64位处理器日渐势微。最终英特尔决定推出与AMD之前推出的AMD64兼容的64位CPU,称为Intel 64。苹果切换到英特尔平台后也开始开发64位操作系统。早期的解决方案十分古怪:如Tiger和Leopard以32位系统为核心,支持程序以64位模式运行,导致实际执行效率并不高。而后期的系统趋于完善,如Snow Leopard和更新的系统本身已于64位模式运行,可运行64位程序,也可以用兼容模式运行32位程序。
一个 64 位的 CPU,内部可能有外部数据总线或不同大小的地址总线,可能比较大或比较小;术语“64位”也常用于描述这些总线的大小。例如,目前有许多机器有着使用 64 位总线的 32 位处理器(如最初的 Pentium 和之后的 CPU),因此有时会被称作“64位”。同样的,某些 16 位处理器(如 MC68000,摩托罗拉公司生产的一款16位处理器,因集成约68000个晶体管而得名)指的是 16/32 位处理器具有 16 位的总线,不过内部也有一些 32 位的性能。这一术语也可能指计算机指令集的指令长度,或其它的数据项(如常见的 64 位双精度浮点数)。去掉进一步的条件,“64位”计算机架构一般具有 64 位宽的整数型寄存器,它可支持(内部和外部两者) 64 位“区块”(chunk)的整数型数据。
3内存限制
目前大部分的 CPU(截至2005 年),其单个寄存器可存放虚拟内存中任意数据的内存地址(本机)。因此,虚拟内存(计算机在程序的工作区域中所能保留的数据总量)中可用的地址取决于寄存器的宽度。自 1960 年的 IBM System/360 起,然后1970年的 DEC VAX微型计算机,以及1980年中期的 Intel 80386,在事实上一致开发合用的 32 位大小的寄存器。32 位寄存器意味着 2^32 的地址,或可使用 4 GB 的内存。当时在设计这些架构时,4 GB 的内存远远超过一般所安装的可用量,而认为已足够用于寻址。认为 4 GB 地址为合适的大小,还有其它重要的理由︰在应用程序中,如数据库,42 亿多的整数已足够对大部分可计算的实例分配唯一的参考引用。
然而在 1990年初,成本不断降低的内存,使安装的内存数量逼近 4 GB,且在处理某些类型的问题时,可以想像虚拟内存的使用空间将超过 4 GB 上限。为此,一些公司开始释出新的 64 位架构芯片家族,最初是提供给超级计算机、顶级工作站和服务器机器。64位运算逐渐流向个人计算机则出现在 2003 年,某些型号的 Apple Macintosh生产线转向 PowerPC 970 处理器(Apple 称为“G5”),并在 2006 年,转向 EM64T 处理器,且 x86-64 处理器在顶级的 PC 中遂渐普及。64 位架构的出现,有效的将内存上限提升至 2^64 地址,16 EB 的内存。从这个角度来看,在 4 MB 主内存很普遍时,最大的内存上限 2^32 的地址大约是一般安装内存的 1000 倍。如今,当 1 GB 的主内存很普遍时,2^64 的地址上限大约是 1 百亿倍。
今天市面上大部分的消费级 PC 存在着人为的内存限制,因受限于实例上的限制,而几乎不太可能需要完整支持 16 EB 容量。举例来说,Apple的 Mac Pro 最多可安装实例内存至 16 GB,而无必要支持超过的大小。最新的Linux内核(版本 2.6.16)可编译成最高支持 64 GB 的内存,Windows VistaUltimate支持超过128G内存。
4处理器
这里的64位技术是相对于32位而言的,这个位数指的是CPU GPRs(General-Purpose Registers,通用寄存器)的数据宽度为64位,64位指令集就是运行64位数据的指令,也就是说处理器一次可以运行64bit数据。64bit处理器并非现在才有的,在高端的RISC(Reduced Instruction Set Computing,精简指令集计算机)很早就有64bit处理器了,比如SUN公司的UltraSparc Ⅲ、IBM公司的POWER5、HP公司的Alpha等。
64bit计算主要有两大优点:可以进行更大范围的整数运算;可以支持更大的内存。不能因为数字上的变化,而简单的认为64bit处理器的性能是32bit处理器性能的两倍。要认清64bit处理器的优势,不可迷信64bit。
目前主流CPU使用的64位技术主要有AMD公司的AMD64位技术、Intel公司的EM64T技术、和Intel公司的IA-64技术。其中IA-64是Intel独立开发,不兼容现在的传统的32位计算机,仅用于Itanium(安腾)以及后续产品Itanium 2,一般用户不会涉及到,因此这里仅对AMD64位技术和Intel的EM64T技术做一下简单介绍。
AMD64位技术
AMD64的位技术是在原始32位X86指令集的基础上加入了X86-64扩展64位X86指令集,使这款芯片在硬件上兼容原来的32位X86软件,并同时支持X86-64的扩展64位计算,使得这款芯片成为真正的64位X86芯片。这是一个真正的64位的标准,X86-64具有64位的寻址能力。
X86-64新增的几组CPU寄存器将提供更快的执行效率。寄存器是CPU内部用来创建和储存CPU运算结果和其它运算结果的地方。标准的32-bit x86架构包括8个通用寄存器(GPR),AMD在X86-64中又增加了8组(R8-R15),将寄存器的数目提高到了16组。X86-64寄存器默认位64-bit。还增加了8组128-bit XMM寄存器(也叫SSE寄存器,XMM8-XMM15),将能给单指令多数据流技术(SIMD)运算提供更多的空间,这些128位的寄存器将提供在矢量和标量计算模式下进行128位双精度处理,为3D建模、矢量分析和虚拟现实的实现提供了硬件基础。通过提供了更多的寄存器,按照X86-64标准生产的CPU可以更有效的处理数据,可以在一个时钟周期中传输更多的信息。
EM64T技术
Intel官方是给EM64T这样定义的:EM64T全称Extended Memory 64 Technology,即扩展64bit内存技术。EM64T是Intel IA-32架构的扩展,即IA-32e(Intel Architectur-32 extension)。IA-32处理器通过附加EM64T技术,便可在兼容IA-32软件的情况下,允许软件利用更多的内存地址空间,并且允许软件进行32 bit线性地址写入。EM64T特别强调的是对32 bit和64 bit的兼容性。Intel为新核心增加了8个64 bit GPRs(R8-R15),并且把原有GRPs全部扩展为64 bit,如前文所述这样可以提高整数运算能力。增加8个128bit SSE寄存器(XMM8-XMM15),是为了增强多媒体性能,包括对SSE、SSE2和SSE3的支持。
Intel为支持EM64T技术的处理器设计了两大模式:传统IA-32模式(legacy IA-32 mode)和IA-32e扩展模式(IA-32e mode)。在支持EM64T技术的处理器内有一个称之为扩展功能激活寄存器(extended feature enableregister,IA32_EFER)的部件,其中的Bit10控制着EM64T是否激活。Bit10被称作IA-32e模式有效(IA-32e mode active)或长模式有效(long mode active,LMA)。当LMA=0时,处理器便作为一颗标准的32 bit(IA32)处理器运行在传统IA-32模式;当LMA=1时,EM64T便被激活,处理器会运行在IA-32e扩展模式下。
目前AMD方面支持64位技术的CPU有Athlon 64系列、Athlon FX系列和Opteron系列。Intel方面支持64位技术的CPU有使用Nocona核心的Xeon系列、使用Prescott 2M核心的Pentium 4 6系列和使用Prescott 2M核心的P4 EE系列。
64位技术就像一股不可阻挡的浪潮扑面而来,从今年开始,64位技术将逐步渗透进我们的生活,也许明年这个时候,我们已经习惯了在64位操作系统下运行64位程序。

但是在管理工具下ODBC数据源界面里只能选择64位的PostgreSQL驱动,32位竟然没有。如此一来,一些32位的应用软件就没法利用ODBC链接到数据库了(尝试选取地话,会报告选取的数据源(64位)和应用程序的系统构架(32位)不一致而失败)。
一开始以为在ODBC数据源无法选择32位驱动是和安装驱动的顺序有关,或者32位和64位驱动互相冲突。卸卸装装反复几次,问题依旧。后来查阅psqlodbc项目组的FAQ才找到解决办法:从cmd运行%SystemRoot%\syswow64\odbcad32.exe
来配置32位的PostgreSQL ODBC数据源。
odbcad32.exe
运行界面和管理工具下ODBC数据源配置界面类似,但是是用来管理32位驱动的。Win7 x64
管理工具下ODBC数据源配置程序(
%SystemRoot%\system32\odbcad32.exe
)实际上是64位的驱动管理。

...64 位操作系统上使用 32 位的安装程序. 请退出,然后使用安装介质或...
答:64位操作系统能完全兼容32位应用程式,包括CAD,只是安装目录要改一下:C:(C为磁盘符号)/Program Files(X86)文件夹(X86就是我们一般用的32位);如果不选这个目录就会默认装到64位的文件夹,安装无法进行了.

64位操作系统上要是运行32位应用程序?
答:第四,寻址能力不同:64位处理器的优势还体现在系统对内存的控制上。由于地址使用的是特殊的整数,因此一个ALU(算术逻辑运算器)和寄存器可以处理更大的整数,也就是更大的地址。比如,Windows Vista x64 Edition支持多达128 GB的内存和多达16 TB的虚拟内存,而32位CPU和操作系统最大只可支持4G内存 ...

32位软件能在64位系统中运行吗?
答:32位软件实际在64位系统中是以兼容方式运行的,但是效率和运行速度是一样的没有任何区别。 32位和64位操作系统是指CPU一次处理数据的能力.区别如下:32位的软件可以在64位中运行,而64位软件不可以运行在32位系统中。

64位操作系统运行32位软件会怎么样
答:64位操作系统运行32位软件可能会出现不兼容的情况。解决的方法:1、首先进入Windows桌面底部,在Windows搜索框中键入“Windows功能”并选择最佳匹配来访问Windows功能。2、在弹出的应用程序列表中,单击“Internet信息服务”框,3、然后选择“确定”按钮。安装此功能需要一分钟通过在Windows搜索框中键入“Internet...

如何在64位的系统中安装32位软件
答:在64位的系统中安装32位软件的步骤如下:1.我们想要安装32位软件的时候,我们先右键安装程序,首先对其配置设置一下。2.右键后,我们会看到很多选项,我们向下找到属性选项,点击进去。3.在属性里面,我们可以看到常规,兼容性,安全,详细信息等设置,我们关注兼容性,点击兼容性选项卡。4.在兼容性设置...

运行在32位系统上的软件是否可以直接在64位系统上运行
答:这个中间层可以在64位系统上模拟32位环境,将32位应用程序运行在64位系统上。因此,用户可以使用32位软件而无需切换到32位系统。但有一些32位软件无法在64位系统上运行,因为它们与32位操作系统内核相关。这些软件的特点是,它们包含驱动程序或内核部分,而这些驱动程序或内核部分是32位的,不能直接在64...

为什么64位操作系统可以运行32位应用程序
答:换而言之,就是说32位系统的处理器最大只支持到4G内存,而64位系统最大支持的内存高 达亿位数。如果现在市场上的CPU全部是64位的平台开发的,那么现在的所有软件都使用不了,因为目前大部分的软件都是基于32位开发的,目前我们说的64位的 windows7系统也只是在32位系统的基础上添加了一些64位的寻址...

64位程序 可以在32位系统运行吗
答:您好,了解到您的问题。我是来自Microsoft Community(微软官方社区)的志愿审阅人,很荣幸为您服务。根据您的描述,您似乎对“64位操作系统运行32位软件”有疑问。目前,绝大多数的64位操作系统均可直接运行32位应用程序。在日常使用上没有太大区别。但是,32位操作系统却无法运行64位的软件,如果设备...

为什么32位的软件在64位的系统上方会不兼容呢
答:第四,寻址能力不同。64位处理器的优势还体现在系统对内存的控制上。由于地址使用的是特殊的整数,因此一个ALU(算术逻辑运算器)和寄存器可以处理更大的整数,也就是更大的地址。比如,Windows Vista x64 Edition支持多达128 GB的内存和多达16 TB的虚拟内存,而32位CPU和操作系统最大只可支持4G内存。

32位软件能装在64位系统上吗
答:32位的软件是不能安装64位的操作系统上的。32位系统的内存使用:1、标准版的 32位版本支持2.93GB RAM,64位版本最高可支持 32 GB RAM。2、企业版的 32 位版本最高可支持32 GB RAM, 64 位版本支持 1 TB RAM 3、数据中心版的 32 位版本支持 64 GB RAM,64 位版本支持 1 TB RAM 4、WEB...