If looking for a different perspective, clarifying this in the new question, but the topic remains the same, is this going to be considered intrinsically a duplicate (from the point of view of the majority of the stack overflow posters)?
If asking such question is ok, what is the best way to indicate the intent for non-duplication?
In order to provide more context, here is a specific question.
The author asked for clarification of the difference between the message passing and the memory sharing techniques. The accepted answer states, in summary, that with shared memory, a datum can be modified simultaneously by logically parallel processes, while with message passing, there is no intrinsic concurrency. Which is true, from a certain point of view.
However, in distributed computing, memory coherency protocols are in the end implemented using message passing over network channels, with distributed locking, etc. Message queues do not always eliminate concurrency, because the processes still usually affect each others state in what they believe to be consistent way. For example, a simple command interpreter can be implemented on top of message queuing, and the commands may be sent as part of some transaction executed from the conversant process. So, high level interactions may always require design for concurrency. On the other hand, low level interactions always involve some kind of message passing over buses, even more pronounced with NUMA architectures, and the atomicity of aligned loads and stores are guaranteed. So, even as low level interactions, the distinction is still blurry to me.
There may be many possible ways to clarify this, I know, but with this thoughts in mind, I am in need of additional clarifications with more precise definition of the distinction.