We’re building an instrument that has to acquire pulsed data at 10 kHz.
On previous x86 based instruments we used shared memory. The pulse handler
did the bare minimum necessary (sum some data and do some smoothing) and
stored cooked data in a shared memory region. The display process would wake
up three times/second, read from shared memory, do additional processing on
it and update a display. A host interface would also use the shared memory
values to feed data to a host interface on demand.
Now we’re using a pxa270 ARM style processor. I’ve read the warnings about
using shared memory on these, which sort of means our old techniques are
On an ARM what is a recommended way to do similar tasks? We could have one
process gather the data as a server and feed it to other processes on
request via IPC.
I’m sure someone has benchmarked this stuff and I’d like to take advantage
of your experience!