By: Ungo (a.delete@this.b.c.d.e), August 6, 2014 6:04 pm
Room: Moderated Discussions
vvid (no.delete@this.thanks.com) on August 5, 2014 5:42 pm wrote:
> Why? DOS was just an another process of AmigaOS. 68k and 286 shared the
> same memory, mouse/floppy/hdd(hardfiles)/ports was "virtualized".
You can't say this without seriously warping the meaning of what most people think of when they hear the word "process". The 286 ran an alien OS with its own "kernel" and "process table". (Scarequotes because DOS, but the principle still applies.) I presume that the I/O was virtualized by writing a custom BIOS for the 286 which interfaced to an AmigaOS I/O delegate process rather than real hardware, and that memory was handled by doing a fixed and permanent allocation of a large block to the 286.
That's not the same thing as a regular process at all, and the interface surface between the two sides is nicely delimited, small, and easy to get right. Running the same kernel on two different CPUs and trying to make it all act like a true, tightly coupled SMP system (albeit one where some processes can only be scheduled on one CPU type) would actually be far more difficult.
> Why? DOS was just an another process of AmigaOS. 68k and 286 shared the
> same memory, mouse/floppy/hdd(hardfiles)/ports was "virtualized".
You can't say this without seriously warping the meaning of what most people think of when they hear the word "process". The 286 ran an alien OS with its own "kernel" and "process table". (Scarequotes because DOS, but the principle still applies.) I presume that the I/O was virtualized by writing a custom BIOS for the 286 which interfaced to an AmigaOS I/O delegate process rather than real hardware, and that memory was handled by doing a fixed and permanent allocation of a large block to the 286.
That's not the same thing as a regular process at all, and the interface surface between the two sides is nicely delimited, small, and easy to get right. Running the same kernel on two different CPUs and trying to make it all act like a true, tightly coupled SMP system (albeit one where some processes can only be scheduled on one CPU type) would actually be far more difficult.