multiple processes read from a device
I am working on a embedded system which has a ARM core and a DSP core. The ARM core acts as an application processor and DSP does the usual number-crunching stuff, such as FFT. We have a Linux OS running on top of ARM. A Linux process just treat DSP as a Linux device. Once a process want to do a FFT, it writes the command to the device. After DSP finishes with FFT, it interrupts the ARM and triggers the device to notify the requesting process.
This can be implemented by a typical "write/read" device model if DSP is used by only one process. However, there may have multiple processes trying to use FFT at the same time, which means device driver has to be able to handle multiple "write/read" requests. The "write" part can be easily implemented. However, once DSP finishes the request, how could the driver find out and notify the requesting process?
Last edited by jiankunli; 05-06-2008 at 05:17 PM.
|