John Hall wrote:

> John Hall wrote:
>
> > I think you'll find that the JCB is only updated when a task
> > switch occurs...
> >
> > When a TRAP#n is executed, the PC and SP are saved on the
> > supervisor stack, hence WL's earlier comment...
>
> Oops! PC and SR, of course :-)
>
> In supervisor mode, the job's SP is in the USP...
>
> > > Now I can forsee there might be a problem if the calling job is
> > > in SV mode when it makes the Open call, as it would first have
> > > to exit SV mode before it could set up jobs, open channels and
> > > things, but it must sooner or later exit that mode, and the
> > > execution will procede as described.
> >
> > This is wrong, for the above reason.
>
> Correction. This would work, so long as the job's PC could be found
> on the supervisor stack by the driver code...

...which, of course, it couldn't if the job had entered supervisor
mode via TRAP#0 :-(

(Time to stop talking to myself and have a beer, I think!)

John

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

Reply via email to