Is there a way I can assign processes to different processors? I know in windows xp you can set process affinity, and wondered if there is a *nix equivelant.
The only unix versions that I work with are HP-UX and SunOS. HP-UX has mpctl(2) and SunOS has processor_bind(2). Both of these calls can bind a thread to a processor.
In unix these days, a process is a collection of threads. And so you could bind several threads of a single process to different cpu's thus allowing them to run simultaneously. Both calls have the ability to bind all threads of a particular process to a cpu. When used this way, they are probably very equivalent to your windows function.
I don't know what the deal is with other versions of unix with respect to cpu binding. I would be interested if anyone else can shed more light.
Im using OS X / Darwin and pure darwin. (2 machines)