You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@andreas-junghanns Hm, I don't think that @pmai and I have the same opinion on that section (> That is already what that section says, and that is true regardless of preemption...)
"The functions the FMU provides must not change global settings which affect the overall process and/or thread environment" makes sense to me but "FMU funtions can, on the other hand, change the floating point control word of the CPU during their execution,..." seems to me like an exception that should have a remark on preemption. What do you think?
Not really, because any sane preemptive scheduling system will save CPU/FPU state in context switches (i.e. this is by definition per-thread/task info). I.e. can you point to a preemptive scheduling system that screws this up nowadays? And if there are, they are going to be restricted in many other ways too (i.e. no MMU, no FPU, ...), so specific care would be needed to target them anyways.
Just like the specification the IG should make a remark such as "To prepare the FMU code to run reliably on preemptive systems FMI functions must not change global settings." in the https://modelica.github.io/fmi-guides/main/fmi-guide/#_global_state section
The text was updated successfully, but these errors were encountered: