Is this the same JDK vendor and version? Theoretically speaking, certain operations are implemented differently for different JDKs on differens OSes. That might be the cause here, some heavily used IO operation might be very fast on Linux due to caching or whatnot but might be slow on Solaris. You can try to attach a profiler and compare the snapshots and see what it is exaclty.