Yes, Oracle recommends increasing shmem to the max possible - not actually a good idea because it means that things will fail ungracefully if you then tell Oracle to ask for more shmem than you should. Instead of following their recommendations, you should pick a number for your particular box and increase shmem to this extent. Say 25%-50% of the RAM available on your box.
You can do this in 6.1+ RH without a kernel recompile, and that's all you need for Oracle. Unfortunately, Postgres is stupid about choosing WHERE to allocate shmem in its address space (being stupid is more portable) and the Linux default is to pick a min and max address only 16MB apart, as I alluded to above. This means that when you increase shmem to (say) 64MB, Postgres still can only use 16MB.
Getting around this is what requires a kernel recompile. If my notes on this didn't make it to the new documentation (i.e. I forgot to stick it in) I'll add it soon.