Additionally, what is needed is an apparatus and method that provides switching between multiple processing complexes and shared I/O. Further, what is needed is an apparatus and method that allows multiple processing complexes, each operating independently, and having their own operating system domain, to view shared I/O devices as if the I/O devices were dedicated to them.