how to start executable synchronously in a distributed env?


I want to start some distributed executables using two computing nodes synchronously, so that they can work together synchronously.

My host is XP with momentics 4.0.1, and I have 2 target nodes installed QNX 6.2.3.

Could some one give me a hint on how to execute a project or two projects synchronously using the two computing nodes as a distributed platform?

Thanks in advance!


I don’t know much about running momentics on targets from an XP development environment but unless your targets are somewhat blind, no keyboard or terminal, why not just load them up and startup the programs manually for testing. In the end you have to find a way to do this anyway, right?

I might also add, its not a bad idea to start out running your whole system on a single node, unless it is specifically redundancy that you are after. Message passing is almost transparently the same whether over a network or not. The main difference from a process point of view is speed.

You can start more than one Run/Debug Job in the Eclipse API, referencing different client (Neutrino OS´). so both clients would run the given executables. You just then have to start both from the IDE.
Later on you would have need them to send a signal to a watchproccess or similar for starting up both automatically (or have them in an Running State since startup).

Thanks a lot for you guys’ suggestions!

To maschoen,

Yes, a single node is enough currently for me. But as a graduation project, I was required to use two computing nodes. And it is best for me to do all the operation on the host nodes.

To micro,

What you said is exactly all I want to implement, and I think your idea is really great. But could you give me more hints on how to start more than one Run/Debug Job to reference differient clients? I have not found the way to start both in the IDE.

Thanks again!

We did start more than one job, go Run->Run/Debug, Create your first Job to be Run on Target OS-0 (You need to create different targets for the clients).
Start this job, at least to initialize, then pause it. Go again Run->Run/Debug, create 2nd job on Target OS-1.
Start it and pause it (or leave it runing) and resume the other job.

For later production use, i think the part with the watchproccess is pretty nice. There should be some API for that too, but not sure.

Great idea.
Thank you very much!
I will try it.