The whole problem that "slots" is trying to solve is to stop a single process from being able to flood the system with threads and therefore make the system unfair in its favour. The "slots" method is really suitable for the 4bsd scheduler but it is really not so good for ULE (at least I think that there are probably better ways that ULE could implement fairness). What I think should happen at this stage is that the inclusion of kern_switch.c should be replaced by actually copying the contents of that file into the two schedulers and that they be permitted to diverge. This would allow ULE and BSD to be cleaned up in terms of the sched_td/kse hack (where they are in fact the same structure, but to keep diffs to a minimum I defined one in terms of the other with macros). It would also allow jeff to experiment absolutly freely on how ULE might implement fairness without any constraints of worrying about the BSD scheduler, and visa versa. I have been hesitant to do this because there was some (small) amount of work going on in the shared file, but I think it is time to cut the umbilical cord. If ULE is really fixed then this would be a good time to break them apart, and delete kern_switch.c (or at least move most of the stuff in it out to the two schedulers). This would protect ULE from future problems being "imported" from BSD for example. comments?Received on Mon Dec 13 2004 - 18:17:38 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:24 UTC