One final problem that can occur with different families of processors, and SMP configurations in general, is that of atomic access to variables.
Since this is so prevalent with interrupt service routines and their handler threads, we've already talked about this in the chapter on Writing an Interrupt Handler.