Hello Rich,
Let's jump right into the answers:
1. Yes.
2. Yes, see details below.
3. No, the shared memory VIs can only be used to communicate between a PCI/PXI 7030-based device and the Windows computer it is install in.
4. Yes, see details below.
As you elude to, TCP communication is not deterministic, and should not be done within your time critical loop. However, there are deterministic ways to get data from your time-critical loop to a normal priority VI running on the RT engine, which can then in turn send data via TCP without interfering with your time-critical code.
The link below points to a section of the NI Developer Zone that deals with these types of issues. The document of particular interest is entitled, "TCP/IP between the Host PC and Re
al-Time Series Hardware".
Communicating with a Real-Time Engine