Wouldn't you still have rewrite much of the OS to make it aware of the multiple environments (cpu+memory)?
At least some form of communication would be needed as you suggest and there would probably have to be a layer in each cpu/memory to pretend to be the OS and forward all OS calls to the right cpu/memory environment. Otherwise the multiple chip solution would only work for multiprocessor aware applications and that would definately not be a good step! Making application writers have to specifically write in support for multiple processor support would be insanely stupid when compared to making the OS handle all that transparently for the applications.
The way Apple did when moving to OS X is probably the best way to do this, creating an emulated environment for the old style applications while providing a new pre-emptive, multiprocessor capable OS. This provides the best transitional environment but may be far too expensive or time consuming. Then again, there are already several emulators out there that probably could provide the emulated environment (with changes of course).
Maybe yet another solution would be the best - simply start from scratch using the principals and interface design of RISC OS! This is of course hugely risky, how many would buy that instead of simply going for Windows/Linux/MacOS?