AtariZoll wrote:We talking here about supervisor mode and related. I don't see why you came at all with thread-safe issue. It has nothing with way how function call is solved.
Let me quote myself:
A nice sideeffect of this strategy (pre-empt not only user code, but also the OS functions) is that the OS *has* to be cleanly written, as the OS itself will be pre-empted. So everything must be thread-safe. Which is something no TOS has ever been remotely close to be.
I had the impression that we were discussing whether Workbench was pre-emptive or not. But apparently not anymore
Anyway, please bear in mind that Exec is (or atleast attempts to be) a microkernel. Treating as much as possible of the OS as subroutines is exactly the point. While supervisor/user really doesn't matter much in the Amiga, it makes a difference in 68000 designs in general. And Workbench was not Commodore's invention, it's an adaption of an already existing 68000 OS.
Then, you say me that read more carefully ... and then you start blah about what Desktop ACCessories can not do
Read it again, and you will see that I talked about what Atari/DR should do, and there is even removal from RAM mentioned
I did not comment your suggested improvements, it was a response to this:
AtariZoll wrote:I'm thinking about why Desktop accessories were not more used as some main applications - for instance word processing or similar.
Maybe I misunderstood you. Anyway, Geneva proved already in the early 90's that GEM applications can be multitasked, even though it's "just" cooperative multitasking. Atari could have done this themselves if they had the time and resources. Or foresight!
AtariZoll wrote:I don't agree that there was no enough RAM. In 512 KB there is normally some 350 KB free space. Well done SW (ASM for instance) must not use lot of RAM. There are nice utils taking only 10-150 KB RAM.
Most software was *not* written in assembler, and a lot of software really needed most of the available megabyte for itself. It doesn't matter if the instructions are few if they handle "large" data. The Amiga suffered badly from this, together with the disk swapping *hell* when you attempted to actually multitask on a plain 500. The ST was much better in it's stock form. Yes, the OS was simpler and quite badly implemented, but it was much more usable in real life when you were a poor student with a plain 1040. However, Workbench became much better later on when users could afford RAM-expansions and mass storage. TOS really didn't improve much.
Anyway, it's refreshing to see that you've changed your mind about multitasking. Not that long ago you deemed the ST unsuitable for that