Sujet : PAD and preemptive multi-tasking
De : anton (at) *nospam* mips.complang.tuwien.ac.at (Anton Ertl)
Groupes : comp.lang.forthDate : 20. Dec 2024, 11:10:31
Autres entêtes
Organisation : Institut fuer Computersprachen, Technische Universitaet Wien
Message-ID : <2024Dec20.111031@mips.complang.tuwien.ac.at>
User-Agent : xrn 10.11
Bernd Paysan have been wondering what to do about PAD in the presence
of preemptive multitasking (but not multi-user) as implemented in
Gforth.
We see two possible scenarios:
If PAD is used only directly by the user for interactive work, only
one PAD is needed.
OTOH, if PAD is used as temporary storage in words that may be called
by any task, PAD needs to be part of the per-task (aka USER) data.
My understanding is that classical multi-tasking Forth systems
(polyForth, I guess) were also multi-user and had one dictionary per
task, so they also had one dictionary pointer and therefore one PAD
per task, but I have not worked with any of them and the descriptions
I have read have been very sketchy, so this could be wrong.
In any case, the question is how PAD is used by current programs that
might be run on Gforth.
- anton
-- M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.htmlcomp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html New standard: https://forth-standard.org/ EuroForth 2024: https://euro.theforth.net