Thank you all for the answers.
I must clarify something, I don´t want anyone to think I’m just another
lunatic trying to go against the rules and destroy the “perfect” harmony of
things!
I’m a R&D Engineer in a Portuguese Institute inside the School of
Engineering of the University of Oporto. I’m trying to determine if XP (and
probably Vista next) is capable of handling a soft real-time application, in
a particular enviornment, to monitor and control machines. I know this is
not the correct architecture but as I said this is intended to be soft
real-time, not hard-real time.
The PC will only work with a GUI communicating with a driver written for a
data acquisition board interrupt capable. There will be no more applications
running, except the ones for system.
The board will generate a int at every 1ms (or more, will just have to see
if we can) and try to implement the following:
- read analog input ports
- generate next point (this is where I need float math if possible or
else I’ll just work with lookup tables and integer math)
- implement a controller (PID or something similar, again it would be
nice to have float math)
- update analog output ports
Doing this in a DPC routine is just not possible. There is no control over
when the routine is executed and then there wouldn’t even be a soft
real-time solution but a “sometime in the next few microseconds it will
happen”-time solution. This considering the dpc will run before the next
int…
As you can see this is NOT going to be distributed in large scale like a
mouse or joystick driver, so I think there is no problem in “bending” the
rules here. Also, this is already implemented in a W98SE enviornment and it
works great at 2ms latency.
Just as a final note I must say that it’s particularly strange that we have
this feature available. In my line of work I came to the conclusion that if
something is particularly not right, the best thing to do is to just not
provide the tools for someone ever consider doing it.
I’m not trying to hurt/kill myself or the computer world, like Anton
implied. I’m just trying to go to the limits of the operating system
capabilities in a special enviornment, like using test dummies in crash
simulations.
Thanks,
Miguel
wrote in message news:xxxxx@ntdev…
> >… it is so expensive to save and restore the floating point state in
> >the x86
>
> which automatically implies that moving from FP registers to memory and
> vice versa is expensive operation it itself. Why someone may want to do it
> * in ISR* is just beyond me…
>
> Anton Bassov
>