异构OS平台的不同点 - 字节顺序


不同平台的文件格式通常是不同的,不同平台的文件的差异主要在于
1, 文件头标志
2, 字节的高低位顺序可能不一样
在10g中,主要就是通过 RMAN 修改这两个东西来实现跨平台的迁移的

字节顺序和平台
   数据文件所以不能跨平台,主要是由于不同平台的字节顺序不同,这是计算机领域由来已久的问题之一,在各种计算机体系结构中,由于对于字、字节等的存储机制有所不同,通信双方交流的信息单元(比特、字节、字、双字等)应该以什么样的顺序进行传送就成了一个问题,如果不达成一致的规则,通信双方将无法进行正确的编/译码从而导致通信失败。

 目前在各种体系的计算机中通常采用的字节存储机制主要有两种:Big-Endian和Little-Endian 。

 一些操作系统(包括Windows)在低位内存地址中存放二进制数据的最低有效字节,因此这种系统被称为Little Endian;一些操作系统(包括Solaris)将最高有效字节存储在低位内存地址中,因此这种系统被称为Big Endian。

  举一个简单点的例子,假如1122这样一个数据要存入不同系统,对于Little Endian的系统,存储的顺序就是2211,小头在前;而对于Big Endian的系统来说,存储顺序就是1122,大头在前,显然Big Endian更符合我们通常的语言习惯。

    那么跨平台的问题就出现了,当一个Little Endian的系统试图从一个Big Endian的系统中读取数据时,就需要通过转换,否则不同的字节顺序将导致数据不能被正确读取。

数据库所处平台的字节序可通过如下查询得到 :
select * from v$transportable_platform

PLATFORM_ID PLATFORM_NAME                          ENDIAN_FORMAT
 ----------- -------------------------------------- --------------
           1 Solaris[tm] OE (32-bit)                Big
           7 Microsoft Windows IA (32-bit)          Little
          10 Linux IA (32-bit)                      Little
           6 AIX-Based Systems (64-bit)             Big
           4 HP-UX IA (64-bit)                      Big

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-767226/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/35489/viewspace-767226/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值