How fast can I acquire data and save it to disk continuously using a plug-in data acquisition board?
Many factors are involved when trying to stream data to disk without incurring data loss or gaps. This is because continuous data acquisition typically involves a race condition between two processes. The first process is acquiring the data in the background and storing it in the PC's memory; the second process is pulling the data from memory and writing it to disk. If these two processes run synchronously at roughly the same speed, everything works fine. If the former process proceeds more rapidly than the latter, a buffer overrun is generated and gaps occur in the data. Some of the factors to consider in this application are the data acquisition board's FIFO size and DMA/bus mastering capabilities, as well as the size of your PC's hard-disk cache, the speed of the PC's CPU and local area bus (ISA and PCI), the other overhead processes occupying the CPU, and the programming language and optimizations you are using. The short answer, then, is 'It depends,' and to really find out for the particular board/computer combination you need to talk with the board vendor's technical support people.
常見問答集 ID 70686