Juggling Molecules with Linux 111
An anonymous reader writes "This article at LinuxDevices.com describes an interesting project at the University of Vermont in which researchers use real-time Linux to build a laser trap that manipulates individual molecules by means of a computer-controlled laser beam. The project makes use of RTLinux, a real-time enhanced version of Linux that allows the system to process interrupts every 50 microsecond, sample new data, and timeshare the laser beam position. 'If the computer failed to respond, for even a millisecond, then we would drop the balls,' explained one of the researchers. Gives a whole new meaning to BSOD, eh?"
Victor Yodaiken if a Patenting Pest (Score:2, Informative)
Re:Realtime Linux on the desktop. (Score:3, Informative)
In short - I want realtime Linux on my desktop NOW! I wish I wasn't that lazy and would actually do something about it...
QNX - for really low latency (Score:5, Informative)
For a 200MHz Pentium (this is an old review), the testers tried sending one billion interrupts with a latency check. When they required 8 microsecond latency, they missed one interrupt in a billion. When they only needed 10ms latency, they didn't lose any.
Comparable figures are available for various real-time Linux systems. [linuxdevices.com] Note that these figures are for a 650MHz CPU. The times are slightly better than for QNX, but the CPU is 3x faster.
Bear in mind that "RTLinux" programs aren't running under Linux. They're running below Linux. They can't make most system calls, for example. QNX programs are ordinary programs, and can make system calls.
The Linux 2.6 kernel isn't bad, though. Running real-time with millisecond response as high-priority Linux threads can actually work in 2.6. In 2.4, no way. You have to be very careful not to load any high-latency drivers, though.
Re:Laser Traps (Score:2, Informative)
From the article:
"In other experiments, researchers use the laser beam to apply minute forces to the beads and to the connected myosin molecule."
They need real time feedback in order to compensate for motion caused by applied forces that might push the molecule out of the focal point of the laser.
They may also be using realtime feedback to continually focus the laser since very small variations can cause changes large enough to drop the molecule (although I believe many of these systems use purely electronic/optical means to do this).
Re:Why do we have this statement? (Score:5, Informative)
Actually the BSOD is the least of the problems, with lags and leads being the primary problem.
Re:delay tolerance? (Score:4, Informative)
In any case I don't think many people on Slashdot understand that tough, classical real-time software can't really run on a PC (or Pentium processors for that matter) no matter what OS is used.
The key to real-time software isn't speed, it's deterministic timing. Once you have a cache involved, it's pretty much game over. Unless, of course, your timing requirements are several orders of magnitude slower than the time it takes the processor to execute an instruction. In that case the non-deterministic behavior may be swallowed up by the large gaps between real-time events.
Nevertheless there may still be the possiblity of memory management accessing the disk and blowing your timing away.