Juan,
Generally speaking, *all* preemptive multitasking operating systems
suffer from similar problems with critical timing -- that includes
Windows starting with Windows 95 (prior to that Windows used cooperative
multitasking), Mac OS X, and any Unix-like OS (I don't know anything
about iOS or Android, but if you run experiments using a mobile OS on a
mobile device then you have a host of other challenges). The E-Prime
Users Guide speaks about this.
To get better control over timing you really need to go back to DOS, or
the Apple II, or a Commodore 64, etc. Or in modern times, use a true
real-time OS such as QNX. But good luck finding convenient
general-purpose experiment-generating software for any of those platforms.
Another question might be just how good of timing performance do you
really need? As also discussed in the E-Prime Users Guide (and in other
publications that you might find), in most cases the timing performance
of your response devices (keyboard, mouse, etc.) is already worse than
the timing performance of your OS, unless you go to the trouble of using
more reliable and expensive response devices. And in most cases, you
can make up for the sloppy timing in your systems just by running a few
more subjects -- think through the statistics. (Assuming that you
merely want aggregate timing measures -- if you really need to control
each individual event down to the millisecond (say, controlling the
spark timing of an engine), then you really will need real-time control.)
That said I don't know whether Windows and Mac OS X differ in any
particular way with regard to timing. But think about it -- for these
experiments, we essentially write real-time computer video games. And
ask yourself which platform is preferred by hard-core real-time gamers.
The answer is Microsoft Windows. So if Windows suits that demanding
use case, it must be at least as suitable as Mac OS X for psychology
experiments.
---------------
David McFarlane
E-Prime training online:
http://psychology.msu.edu/Workshops_Courses/eprime.aspx
Twitter: @EPrimeMaster (
https://twitter.com/EPrimeMaster)