32-bit and 64-bit application and routine support

You can develop and deploy of applications and routines, including procedures and user-defined functions (UDFs), on various platforms. For your applications and routines to work properly it is important to review and understand the database support for 32-bit and 64-bit environments.

To start off, it is good to first clarify a few points:
  • A 32-bit hardware platform is running a 32-bit operating system, and that a 64 bit hardware platform is running a 64-bit operating system.
  • You can install a 32-bit instance of the database on either a 32-bit operating system or a 64 bit operating system, but that you can only install a 64-bit instance of the database on a 64-bit operating system.
  • A 32-bit application is an application that was built on a 32 bit operating system.
  • A 64-bit application is an application that was built on a 64-bit operating system.

The following tables outline 32-bit and 64-bit applications and routines support for 32-bit and 64-bit environments:

Table 1. Support for running 32-bit and 64-bit applications on 32-bit or 64-bit hardware platforms
  32 bit hardware + operating system 64 bit hardware + operating system
32 bit application YES YES
64 bit application NO YES

The following table indicates the support for creating a connection to a database from a remote client application.

Table 2. Support for connections from 32-bit and 64-bit clients to 32-bit and 64-bit servers
  32 bit server 64 bit server
32 bit client YES YES
64 bit client YES YES
Table 3. Support for running fenced and unfenced procedures and UDFs on 32-bit and 64-bit servers
  32 bit server 64 bit server
32 bit fenced procedure or UDF YES YES1,2,3
64 bit fenced procedure or UDF NO YES
32 bit unfenced procedure or UDF YES NO2
64 bit unfenced procedure or UDF NO YES
Note:
  1. Running a 32-bit procedure on a 64-bit server can be slow.
  2. 32-bit routines must be created as FENCED and NOT THREADSAFE to work on a 64 bit server.
  3. It is not possible to invoke 32-bit routines on a Linux/IA-64 database server.