I'd like to hear what you folks think about the following question. First, some setup. We're looking at a major upgrade of an existing product. The existing product is over a decade old and uses a 500MHz x86 SBC to do a lot of realtime (motor control and other things) and to run a primitive UI. The new product would do roughly the same realtime stuff, but would add a modern GUI, connection to useful peripherals such as printers, and some level of internet connectivity. This may well put us into Linux or some version of Windows. Due to the excruciating entanglement of the current UI and realtime, it would certainly require a major rewrite of the realtime in any case. I could tell you such stories...
This is a high-price, low volume product, so cost of the computing HW is insignificant compared to development cost and time.
Now for the question. What do you see as advantages and disadvantages to separating the functionality onto two SBCs, one for realtime and one (not necessarily the same) for GUI, etc.? Both approaches (single SBC or dual) have come up for discussion. I'd like to hear as many viewpoints on the question as I can get. Thanks.