LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

shared memory

Hi,
I wanted to know if there is a way to share DLL memory with Labview, (in a simple windows 2000 desktop computer).  For example, if I have two C processes, (C-Process-1 and C-Process-2), attached to a DLL with a shared memory segment, each C process can read and write directly to the shared memory, (declared in the DLL, using a shared segment, and exported properly).  That is, if C-Process-1 writes to DLL-shared-memory-array[100], C-Process-2 can read those values from DLL-shared-memory-array[100] directly without calling any functions to pass/copy any of the data.  That is, there is no passing data between the DLL and the processes.  The memory is simply shared and directly addressed by each process.  This I know is true and have implemented such a strategy.  I want to know if the same paradigm is possible using Labview.  Could I substitute a Labview program, (call it Labview-1), for C-Process-2 in the above example and have it work the same way.  That is, could I setup the system such that Labview-1 could assign values directly to DLL-shared-memory-array[100], and C-Process-1 could directly read them.  And vice-versa.  I know I could setup function calls to the DLL, (from Labview-1), and pass data in and out to DLL-shared-memory-array[100], but again, I don't want to pass the data.  That would be wasting cpu time, (and memory), over direct mapping, (I think).
Thanks,
Nu
0 Kudos
Message 1 of 2
(3,003 Views)
Nu,

Unfortunately, the only way to do what you're asking is to pass the data in and out of the dll (which I know you don't want to do). Sorry I can't give you a better answer!
Sarah K.
Search PME
National Instruments
0 Kudos
Message 2 of 2
(2,972 Views)