×

Loading...
Ad by
  • 最优利率和cashback可以申请特批,好信用好收入offer更好。请点链接扫码加微信咨询,Scotiabank -- Nick Zhang 6478812600。
Ad by
  • 最优利率和cashback可以申请特批,好信用好收入offer更好。请点链接扫码加微信咨询,Scotiabank -- Nick Zhang 6478812600。

@

你需要一个patch

本文发表在 rolia.net 枫下论坛PURPOSE
=======

The article explains the differences between AIX 4 and AIX 5 systems in terms
of 32/64-bit hardware & 32/64-bit kernel. It explains how to run 32-bit 8.1.7
and 64-bit 9.2.0 on same AIX 5L system on 64-bit hardware.


SCOPE & APPLICATION
=====================

Oracle customers installing Oracle on AIX 5L platforms.


AIX 5L & Oracle compatibility
==============================


Introduction:
-------------


The AIX 5L is the latest version of OS from IBM.It is designed to exploit
advanced 64-bit system and software architectures. The "L" in AIX 5L stands for
Linux affinity. This means that AIX supports some of the Linux APIs and tools
in this release.



Kernel Modes:
--------------


A new feature in AIX 5L is the option of running the kernel in either 64-bit
or 32-bit mode. But, to run the kernel in 64-bit mode you need to have a
64-bit Hardware.

In AIX 5.2, the 32-bit kernel is installed by default. The 64-bit kernel,
along with JFS2 (enhanced journaled file system), can be enabled at
installation time.

To find out if the machine can run 64-bit kernel, use the following command:

$ /usr/sbin/bootinfo -p

returns the string "32", if executed on a machine that is only capable of
running the 32-bit kernel. The command returns "chrp", if the machine is
capable of running the 64-bit kernel or the 32-bit kernel.

To find out the currently enabled kernel mode, use

$ /usr/sbin/bootinfo -K

returns "32" if the 32-bit kernel is enabled, and "64" if the 64-bit kernel is
enabled.



Switching between Kernel modes:
--------------------------------


It is possible to switch between the 32-bit and 64-bit kernels without
reinstalling the operating system.

Please refer to Note 169426.1 - How to Change Kernel Mode
of IBM AIX 5L (5.1)for more information.

Note: Do not boot the unix_up kernel on an mp system, or a unix_64 kernel on
32-bit h/w. It will fail and you'll have to use maintenance mode to fix it.


Compatibility between the different kernel modes:
-------------------------------------------------


Applications developed/compiled using 32-bit kernel mode, in most cases,will
run fine with 64-bit kernel mode as well.

The only case where a 32-bit application will not run on the 64-bit kernel is
if an application needs the use of a kernel extension (a program that extends
the kernel and may, for example, provide a new system call for the application)
that is only available in 32-bit mode.

An example is Oracle 8.1.7, which contains a kernel extension that is only
32-bit enabled. Oracle 9.2.0 has no such restriction and runs on the 64-bit
kernel.


Oracle Compatibility with AIX 5L:
----------------------------------

As mentioned in the previous section , Oracle 8.1.7 uses at least one 32-bit
kernel extension. A version compatible with 64-bit kernel mode is not provided
with the default media, but is available as Patch 2896876. This patch must be
installed prior to using the kernel in 64-bit mode.

The kernel can be in either 32-bit mode or 64-bit mode. No patch is required
to use Oracle 8.1.7 and or Oracle 9.2.0 on the former. Patch 2896876 is
required if Oracle8i is going to be used on the latter.

The Oracle 9.2.0 version for AIX 5L, on the other hand , does not use any such
32-bit kernel extensions, and therefore can run in either of the kernel modes.
So, we can run Oracle 9.2.0 in either 32-bit or 64-bit kernel modes.

As a result of above two statements, if the customer wants to use both
Oracle 8.1.7 and Oracle 9.2.0 on AIX 5L, he either has to leave the kernel in
32-bit mode or install Patch 2896876 which allows the use of both 32-bit mode
and 64-bit mode. If you are changing the kernel mode to 32-bit and you will run 9.2.0 on
this server, the following line should be included in /etc/inittab:

load64bit:2:wait:/etc/methods/cfg64 >/dev/console 2>&1 # Enable 64-bit execs

This allows 64-bit applications to run on the 32-bit kernel.


Oracle Releases for AIX 4.3.3 and AIX 5L:
-----------------------------------------


The 64-bit ABI in AIX 4.3.3 is not supported under AIX 5L.

Moving existing 64-bit applications from AIX 4.3.x to AIX 5L requires
recompiling the application source code, and possibly changing application
source code to ensure that data types are used correctly and consistently.

Due to this restriction, starting from 9.2.0 version, Oracle ships different
CDs for AIX 433 and AIX 5L. Customers should be careful not to use the wrong
CDs, since these two releases are not compatible. This is also the reason why
the 64-bit versions 9.0.1 and 8.1.7/64 do not run on AIX 5L.


For AIX 5L - CD part numbers are A99331-01 to A99334-01
For AIX 4.3.3 - CD part numbers are A99342-01 to A99345-01



Other useful commands:
----------------------


To find out if Oracle is 32-bit or 64-bit use:

$ ORACLE_HOME/bin> file oracle

If 32-bit :

oracle: executable (RISC System/6000) or object module not stripped

If 64-bit :

oracle: 64-bit AIX executable or object module not stripped


To find out if 64 bit extensions are loaded:

$ lslpp -l bos.64bit

If 32-bit:

lslpp: 0504-132 Fileset bos.64bit not installed.

On AIX 4.3.3 , If 64-bit:

Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos bos.64bit 4.3.3.78 COMMITTED Base Operating System 64 bit
Runtime

On AIX 5.1 , If 64-bit:

Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos bos.64bit 5.1.0.35 COMMITTED Base Operating System 64 bit
Runtime

To find out if OS is 32b-it or 64-bit :

$ locale64

If 32-bit:

exec(): 0509-036 Cannot load program locale64 because of the following errors:
0509-032 Cannot run a 64-bit program on a 32-bit machine.

If 64-bit:

LANG=en_US
LC_COLLATE="en_US"
LC_CTYPE="en_US"
LC_MONETARY="en_US"
LC_NUMERIC="en_US"
LC_TIME="en_US"
LC_MESSAGES="en_US"
LC_ALL=

To find out if kernel is 32-bit or 64-bit:

$ ls -l /unix

If 32-bit:

lrwxrwxrwx 1 root system 21 Mar 25 2002 /unix@ -> /usr/lib/boot/unix_mp*

If 64-bit:

rwxrwxrwx 1 root system 21 Jun 04 2002 /unix@ -> /usr/lib/boot/unix_64*

For AIX 5.2 64-bit:
********************


To find out if hardware if 32-bit or 64-bit :

$ getconf HARDWARE_BITMODE

64 ( If hardware is 64 bit)

To find out if kernel is 32-bit or 64-bit:

Command: getconf KERNEL_BITMODE
64 (If Kernel is booted in 64 bit mode)



RELATED DOCUMENTS
-----------------
Note 169426.1 How to Change Kernel Mode of IBM AIX 5L (5.1)
Note 225551.1 AIX - 32bit vs 64bit
Note 222404.1 How to Run Oracle Server 8.1.7 and 9.2 at The Same Time on
IBM AIX 5L (5.1)
.更多精彩文章及讨论,请光临枫下论坛 rolia.net
Report

Replies, comments and Discussions:

  • 工作学习 / 专业知识杂谈 / 原本Oracle 8.1.7 64 bit安装在AIX 4.3.3上,现在升级AIX到5.2 64位内核,发现oracle不能跑啦,出错为
    0509-124 The program is a discontinued 64-bit object file.
    请问各位有何好计?除了重新安装oracle?
    • 你需要一个patch
      本文发表在 rolia.net 枫下论坛PURPOSE
      =======

      The article explains the differences between AIX 4 and AIX 5 systems in terms
      of 32/64-bit hardware & 32/64-bit kernel. It explains how to run 32-bit 8.1.7
      and 64-bit 9.2.0 on same AIX 5L system on 64-bit hardware.


      SCOPE & APPLICATION
      =====================

      Oracle customers installing Oracle on AIX 5L platforms.


      AIX 5L & Oracle compatibility
      ==============================


      Introduction:
      -------------


      The AIX 5L is the latest version of OS from IBM.It is designed to exploit
      advanced 64-bit system and software architectures. The "L" in AIX 5L stands for
      Linux affinity. This means that AIX supports some of the Linux APIs and tools
      in this release.



      Kernel Modes:
      --------------


      A new feature in AIX 5L is the option of running the kernel in either 64-bit
      or 32-bit mode. But, to run the kernel in 64-bit mode you need to have a
      64-bit Hardware.

      In AIX 5.2, the 32-bit kernel is installed by default. The 64-bit kernel,
      along with JFS2 (enhanced journaled file system), can be enabled at
      installation time.

      To find out if the machine can run 64-bit kernel, use the following command:

      $ /usr/sbin/bootinfo -p

      returns the string "32", if executed on a machine that is only capable of
      running the 32-bit kernel. The command returns "chrp", if the machine is
      capable of running the 64-bit kernel or the 32-bit kernel.

      To find out the currently enabled kernel mode, use

      $ /usr/sbin/bootinfo -K

      returns "32" if the 32-bit kernel is enabled, and "64" if the 64-bit kernel is
      enabled.



      Switching between Kernel modes:
      --------------------------------


      It is possible to switch between the 32-bit and 64-bit kernels without
      reinstalling the operating system.

      Please refer to Note 169426.1 - How to Change Kernel Mode
      of IBM AIX 5L (5.1)for more information.

      Note: Do not boot the unix_up kernel on an mp system, or a unix_64 kernel on
      32-bit h/w. It will fail and you'll have to use maintenance mode to fix it.


      Compatibility between the different kernel modes:
      -------------------------------------------------


      Applications developed/compiled using 32-bit kernel mode, in most cases,will
      run fine with 64-bit kernel mode as well.

      The only case where a 32-bit application will not run on the 64-bit kernel is
      if an application needs the use of a kernel extension (a program that extends
      the kernel and may, for example, provide a new system call for the application)
      that is only available in 32-bit mode.

      An example is Oracle 8.1.7, which contains a kernel extension that is only
      32-bit enabled. Oracle 9.2.0 has no such restriction and runs on the 64-bit
      kernel.


      Oracle Compatibility with AIX 5L:
      ----------------------------------

      As mentioned in the previous section , Oracle 8.1.7 uses at least one 32-bit
      kernel extension. A version compatible with 64-bit kernel mode is not provided
      with the default media, but is available as Patch 2896876. This patch must be
      installed prior to using the kernel in 64-bit mode.

      The kernel can be in either 32-bit mode or 64-bit mode. No patch is required
      to use Oracle 8.1.7 and or Oracle 9.2.0 on the former. Patch 2896876 is
      required if Oracle8i is going to be used on the latter.

      The Oracle 9.2.0 version for AIX 5L, on the other hand , does not use any such
      32-bit kernel extensions, and therefore can run in either of the kernel modes.
      So, we can run Oracle 9.2.0 in either 32-bit or 64-bit kernel modes.

      As a result of above two statements, if the customer wants to use both
      Oracle 8.1.7 and Oracle 9.2.0 on AIX 5L, he either has to leave the kernel in
      32-bit mode or install Patch 2896876 which allows the use of both 32-bit mode
      and 64-bit mode. If you are changing the kernel mode to 32-bit and you will run 9.2.0 on
      this server, the following line should be included in /etc/inittab:

      load64bit:2:wait:/etc/methods/cfg64 >/dev/console 2>&1 # Enable 64-bit execs

      This allows 64-bit applications to run on the 32-bit kernel.


      Oracle Releases for AIX 4.3.3 and AIX 5L:
      -----------------------------------------


      The 64-bit ABI in AIX 4.3.3 is not supported under AIX 5L.

      Moving existing 64-bit applications from AIX 4.3.x to AIX 5L requires
      recompiling the application source code, and possibly changing application
      source code to ensure that data types are used correctly and consistently.

      Due to this restriction, starting from 9.2.0 version, Oracle ships different
      CDs for AIX 433 and AIX 5L. Customers should be careful not to use the wrong
      CDs, since these two releases are not compatible. This is also the reason why
      the 64-bit versions 9.0.1 and 8.1.7/64 do not run on AIX 5L.


      For AIX 5L - CD part numbers are A99331-01 to A99334-01
      For AIX 4.3.3 - CD part numbers are A99342-01 to A99345-01



      Other useful commands:
      ----------------------


      To find out if Oracle is 32-bit or 64-bit use:

      $ ORACLE_HOME/bin> file oracle

      If 32-bit :

      oracle: executable (RISC System/6000) or object module not stripped

      If 64-bit :

      oracle: 64-bit AIX executable or object module not stripped


      To find out if 64 bit extensions are loaded:

      $ lslpp -l bos.64bit

      If 32-bit:

      lslpp: 0504-132 Fileset bos.64bit not installed.

      On AIX 4.3.3 , If 64-bit:

      Fileset Level State Description
      ----------------------------------------------------------------------------
      Path: /usr/lib/objrepos bos.64bit 4.3.3.78 COMMITTED Base Operating System 64 bit
      Runtime

      On AIX 5.1 , If 64-bit:

      Fileset Level State Description
      ----------------------------------------------------------------------------
      Path: /usr/lib/objrepos bos.64bit 5.1.0.35 COMMITTED Base Operating System 64 bit
      Runtime

      To find out if OS is 32b-it or 64-bit :

      $ locale64

      If 32-bit:

      exec(): 0509-036 Cannot load program locale64 because of the following errors:
      0509-032 Cannot run a 64-bit program on a 32-bit machine.

      If 64-bit:

      LANG=en_US
      LC_COLLATE="en_US"
      LC_CTYPE="en_US"
      LC_MONETARY="en_US"
      LC_NUMERIC="en_US"
      LC_TIME="en_US"
      LC_MESSAGES="en_US"
      LC_ALL=

      To find out if kernel is 32-bit or 64-bit:

      $ ls -l /unix

      If 32-bit:

      lrwxrwxrwx 1 root system 21 Mar 25 2002 /unix@ -> /usr/lib/boot/unix_mp*

      If 64-bit:

      rwxrwxrwx 1 root system 21 Jun 04 2002 /unix@ -> /usr/lib/boot/unix_64*

      For AIX 5.2 64-bit:
      ********************


      To find out if hardware if 32-bit or 64-bit :

      $ getconf HARDWARE_BITMODE

      64 ( If hardware is 64 bit)

      To find out if kernel is 32-bit or 64-bit:

      Command: getconf KERNEL_BITMODE
      64 (If Kernel is booted in 64 bit mode)



      RELATED DOCUMENTS
      -----------------
      Note 169426.1 How to Change Kernel Mode of IBM AIX 5L (5.1)
      Note 225551.1 AIX - 32bit vs 64bit
      Note 222404.1 How to Run Oracle Server 8.1.7 and 9.2 at The Same Time on
      IBM AIX 5L (5.1)
      .更多精彩文章及讨论,请光临枫下论坛 rolia.net
      • 多谢,但问题是'The 64-bit ABI in AIX 4.3.3 is not supported under AIX 5L. '
        文章说的是32位的oracle如果跑在64位的AIX 5L上需要patch。我昨天早已找到这个patch,但发现原本AIX 4.3.3上装的oracle是64位的。。。哎,不适用阿