Page 34 of the QL Technical Guide; 6.3.3 Scheduler Loop Tasks states that:
"Calls from the scheduler loop do not interrupt atomic tasks. This means
that operations such as allocating or releasing memory can be performed
safely."

Now admittedly it doesn't say " This means that operations such as
allocating or releasing memory  AND starting jobs " but, conversely, the
definitive QDOS reference written by the author of QDOS himself doesn't say
anywhere else that you can't.  But anyway it's all a word game. We're
probably doing things now with the QL "platform" that were never even
imagined back when the machine and its original OS were first produced.

In the driver I have decided to implement an "OS Capability" byte, which has
bits set to indicate that the current OS is capable (or not capable) of
doing things in a certain way.  Bit 0 just got allocated to the function:
"Can launch tasks from the scheduler loop"  Maybe I'll be able to set it
high for Minerva as well ;) In any event, I'm sure there will be a few more
bits allocated before this driver makes it out of beta.

I suspect that if I'd taken the path of simply not supporting QDOS (which,
believe me, I would have loved to have done) the resulting product would be
too restrictive to be useful.

Anyway, I have no criticisms of SMSQ and the way it does things, nor of QPC2
- which has enabled me to develop this code so quickly.



Adrian

-----Original Message-----
From: ql-users-boun...@lists.q-v-d.com
[mailto:ql-users-boun...@lists.q-v-d.com] On Behalf Of Marcel Kilgus
Sent: 23 February 2011 12:21
To: ql-us...@q-v-d.com
Subject: Re: [Ql-Users] Ranting: A Story of two Operating Systems


Where does it say it should work under QDOS? I guess this wasn't consciously
"fixed" in SMSQ/E, it's probably more a side effect of the new
implementation. And documenting all possible side effects borders on the
impossible, unfortunately.


_______________________________________________
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Reply via email to