Squeak process implicitly yields?
Lex Spoon
lex at cc.gatech.edu
Fri Apr 30 16:03:57 UTC 2004
Masashi Umezawa <umejava at mars.dti.ne.jp> wrote:
> Aha-. Now I see the results. Thanks!
>
> So, is it intentional?
> I'm not sure what is the merit. Wouldn't it make the squeak code
> non-portable?
It sounds like would make it non-portable with some Smalltalks and
portable with others. So we can do what seems right.
IMHO, the processes should go to the beginning of the queue. That way
we have a coherent implementation of at least *one* strategy: namely,
processes finish what they are doing before they yield. With the
current state (which I admit surprises me to read about!), you neither
get fair sharing of the CPU nor do you get a guarantee that your process
will finish its current chunk of work.
An alternative choice would be to go whole hog and have preemptive
switching. I don't know which way is better, but I know there have been
times that I wanted preemption, and I know that I have never yet taken
advantage of non-preemption. I would even suggest that preemption
across priority levels would be useful; or at least, I would like to
have groups of preemptive processes where some processes have higher
priority than others.
-Lex
More information about the Squeak-dev
mailing list
|