On 2024-03-26, at 10:58 PM, Vanessa Freudenberg vanessa@codefrau.net wrote:
we have no actual scheduler that gives a fair share of time to all runnable processes.
I have to admit that I can't even work out what we really mean by "a fair share of time"! Obviously, what we *really* mean in any particular case is that "a fair share" equals "my processes get everything they want and to hell with the rest"
We do have a couple of relatively simple things almost ready to provide some improvement; a) asynchronous file access, which has had a prim plugin for.. a couple of decades? AsynchFile is in the default image but has not users. b) sockety stuff, where it's almost defined that there will be an appreciable (in cpu terms) time waiting. I *think* the unix plugin does some stuff asynchronously, but not sure about higher level prim calls.
Even just making that sort of thing trigger a yield event would surely improve matters for server-type usage?
tim -- tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Useful random insult:- Living proof that nature does not abhor a vacuum.