Most of our control systems run either on embedded systems or Linux Systems.
Currently, we favor the Ubuntu distribution. The system seems more stable and we have less issues
with our driver development. Unfortunately, not very many PCI cards, especially for our purposes, are not supported under Linux; we have to develop our own drivers (it is getting better, though).
Here is one driver that I often use including a comfortable programming API.
Many of our systems require precise timing and we use bus level timing products from Symmetricom (R)to achieve the decoding of an IRIG-B signal. (www.symmetricon.com).
BC636PCI Irig-B Bus Level Timing Card from Symmetricom
We currently use the bc635PCI card to decode the irig timing signal. The driver supports a NTP server as well.
The driver is written in C, the API is written in C++. Both currently support kernel version > 2.6.17.
I do not want to offer support for this driver, but you can receive a copy of the sources should you have a use for it. This is especially true, if you want to use the code for scientific or educational purposes. Commercial use will neither be supported nor allowed. Contact me of you would like to receive the sources.