Which processor on which they work depends entirely on the OS and depends on many factors, including what else happens on the same machine. However, the general case is that they will sit on one core each, sometimes changing to different kernels ("sometimes" can mean several times per second or even more often).
Çores do not have their own RAM on conventional PC hardware, and the processes will be provided with as much RAM as they ask for.
For MPI processes, yes, your parallelism should match the kernel count (assuming the CPU workload is greater). If two MPI processes are running with -np 2, they will simply consume all four cores. Increase everything and they will begin to fight. As explained above, RAM has nothing to do with this, although the cache will suffer if there is competition.
This "question" is too long, so I will stop now.
source share