As of now, I've been doing test runs in various virtual machines (BOCHS, QEMU, VBOX, VMWARE VS2) and getting lower and upper limits and then using those as the task limits in the code. But there has to be a way I can figure those out on the fly or without the need to re-compile. I thought about using my VMX code to start a virtual machine, log the timings, then start the "real run" with those timings, but that would *require* VMX support and would not be completely accurate. I don't know of any way to calculate them in the same run as the actual run, any ideas? Or am I even trying to approach this the right way?
Also, how can I figure out how much percentage complete the task is? That's another essential part that the OS would need to know in order to throttle back priority if the task is completing its run too early (before the earliest deadline). I have absolutely no way of doing that presently.
I know this is generally an embedded OS's league, but if feasible, I'd like to continue my little experiment.
