You're right.
However, from the perspective of the programmer it is non-deterministic. It only becomes deterministic when it is coupled with a particular scheduler and dispatcher. Most programmers strive to write cross platform code.
However, from the perspective of the programmer it is non-deterministic. It only becomes deterministic when it is coupled with a particular scheduler and dispatcher. Most programmers strive to write cross platform code.
On what planet? Surely not this one, as most programs are very tightly coupled to particular operating systems.
Regardless, a future version of any single platform could include changes to the scheduler and/or dispatcher.