Solaris2.6+JDK1.3.0.4で、
String command = "mv " + sSrc + " " + sDst;
Process process = Runtime.getRuntime().exec(command);
process.waitFor();
int iReturn = process.exitValue();
とやってファイルを500個ほどコピーすると、
ファイルディスクリプタを食いつぶしてlibthread panicになります。
フリーズした子プロセスをkillしてしばらくすると、
またファイル移動を始めます。

ファイルディスクリプタを増やさずにmvコマンドを呼べないのでしょうか?