On 07/14/2015 02:05 PM, Jay Jaeger wrote:
Going all the way back to at least the IBM 7090, and
presumably the 709,
though I have not actually checked. The B5000 had IO processors as well.
Again, you're missing the point. The system *starts* with a PPU and
loads the CPU up to run. OS was pretty much entirely within the PPUs.
PPUs have autonomous access to the entire memory space of the CPU and
use the "exchange jump" to switch it to a task.
What was the stumbling block was that this was incompatible with virtual
memory schemes and other similar arrangements that fragmented the memory
space of the CPU. Transient real-time tasks, whose existence could be
measured in a millisecond or two were also unsuited for this setup.
The point is if the PP setup had been limited to I/O, the CPU with no
privileged mode (at the time; eventually a "monitor mode" was
introduced) would have been useless for most purposes. In fact, if an
address violation or arithmetic fault occurred, the CPU would store the
reason and just half. To issue a request to the PP OS, a CPU program
would store a request in word 1 of its field length and then hang.
--Chuck