Several applications require a specific release of Linux on which to run, such as RHEL 5 x64, Update 4.
Theoretically, CentOS 5.4 x64 should be exactly the same as the RHEL variant - since the CentOS project endeavours to be 100% binary compatible with RHEL.
Likewise, Oracle Enterprise Linux should be identical - but many applications will fail to work properly when not running on the "proper" distribution.
The cheap fix of just installing the appropriate redhat-release
rpm is not always effective either.
Under the hood, what are the real differences between RHEL and the repackaged editions?
Outside of the philosophy between RHEL vs. CentOS it can be many reasons, but I feel the largest components are:
The differences between Oracle Linux and Red Hat Enterprise Linux are mostly differences in licensing and support.
Both companies use a different mechanism to count the number of installed instances.
Secondly Oracle Linux offers the choice of several types of kernel. you can have the same kernel Red Hat ships or you can have one of two types of kernels modified by Oracle.
Oracle's Unbreakable kernel includes some additional drivers (e.g. for SSD disks) that are not available in Red Hat's kernel. Because of these additions Oracle claims significant performance gains.
Off course you need to consider how much value you attach to such marketing claims and whether or not the situation applies to your environment. I.e. do you use SSD disks and infiband messaging?
On the other hand Oracle does IMHO not provide a real alternative for Red Hat Network Satellite server. That was a big influence in our decission to run our new Oracle Databases on standard RHEL servers. But again how important this is depends on your environment. The Oracle representative we spoke did mention that Oracle Enterprise Manager has been extended with some management features but we did not investigate that further.
Here is another site with more information on Oracle Linux.