After this I noticed that the concurrent file limit by default in Mac OS X is quite low! Only around 200 processes per user, which even if it’s more than enough for most users sometimes depending on what you do you need more ;)
Mac OS X respects the sysctl.conf kernel parameter file as most unix do, so it’s just a question of adding the following parameter there:
I noticed after raising the processes value that the shared memory values where low as well, so it’s a good option to change them all at the same time.
Of course this configuration is not really recommended for machines with less than 1Gb of RAM, so be careful!
Also you need to raise the limit on launchd, launchd is Apple replacement for initd and it manages the initial limits for users.
Just edit (or create /etc/launchd.conf) and add:
limit maxproc 1024 2048limit maxfiles 2048 4096