Questions tagged [ipc]

IPC stands for Inter-process Communication and represents a set of methods for exchanging data and messages between threads and processes.

In computing, Inter-process communication (IPC) is a set of methods for the exchange of data among multiple threads in one or more processes. Processes may be running on one or more computers connected by a network. IPC methods are divided into methods for:

  • message passing
  • synchronization
  • shared memory, and
  • remote procedure calls (RPC).

The method of IPC used may vary based on the bandwidth and latency of communication between the threads, and the type of data being communicated.

There are several reasons for providing an environment that allows process cooperation:

  • Information sharing
  • Speedup
  • Modularity
  • Convenience
  • Privilege separation

IPC may also be referred to as inter-thread communication and inter-application communication.

The combination of IPC with the address space concept is the foundation for address space independence/isolation.

4538 questions
2
votes
1 answer

Building an HTTP API for continuously running python process

TL;DR: I have a beautifully crafted, continuously running piece of Python code controlling and reading out a physics experiment. Now I want to add an HTTP API. I have written a module which controls the hardware using USB. I can script several…
David Fokkema
  • 320
  • 2
  • 9
2
votes
0 answers

IPC: Shared Memory Access Restrict for particular process in Linux

I'm new to Linux IPC concepts in C. When a shared memory is created by a process. That Shm can be accessed by any other processes also. Consider the following figure, https://i.stack.imgur.com/Z8ix5.jpg or …
shravan
  • 85
  • 9
2
votes
1 answer

Sharing an Object in the Heap

I'm trying to share an instance of a class between two programs. This is a glorified producers consumers problem; however, for abstraction purposes, I have put a mutex in the class. I've seen instances of sharing structs between processes, but this…
SailorCire
  • 548
  • 1
  • 7
  • 24
2
votes
0 answers

Client Server program using messages queues

I am trying to design a Client Server kind of application in which my Server is a daemon that accepts client requests, send client's data over a serial channel to the other side(which is an MCU and its firmware will reply to the Server request over…
Megatron
  • 101
  • 1
  • 1
  • 7
2
votes
3 answers

PhantomJS call from PHP - performance

I'm currently executing PhantomJS (from PHP) to render some HTML reliably (utilizing 3rd party js libraries that can't be easily replicated in PHP) and then sending the rendered HTML back to the client. $fh = fopen('/dev/shm/graph-'.$sig.'.html',…
EoghanM
  • 25,161
  • 23
  • 90
  • 123
2
votes
1 answer

Creating multiple instances/copies of a static global

Not sure if I worded the title correctly, but bear with me and all will be explained... We have a collection of code not invented here which uses inter-process comms (IPC messaging). The very rough outline of the scheme is something like…
John U
  • 2,886
  • 3
  • 27
  • 39
2
votes
0 answers

Handling mq_open failures after mq_unlink

I'm writing a client/server process on Suse Linux using Posix message queues to communicate, similar to the accepted answer in "How do I use mqueue in a c program on a Linux based system?". When the server dies, it does an mq_close and mq_unlink.…
PeterS6g
  • 122
  • 11
2
votes
3 answers

Is there a way to send messages from C#.NET assembly(ActiveX) to VB6 application?

This Q&A refers to and can be used for foll. purposes: Send message from IE browser to vb6 app via ActiveX dll Send message from ActiveX dll to vb6 app Send message from C#.net (dll) to vb6 app I have read this article but doesn't seem to be very…
variable
  • 8,262
  • 9
  • 95
  • 215
2
votes
1 answer

Perl: I/O Redirection with IPC::Run

Using IPC::Run trying to imitate the following is not producing the desired affect for me at this time. Unfortunately I am not familiar enough with I/) redirection with IPC::Run to solve for myself and I will need to employ the great knowledge-base…
MattSizzle
  • 3,145
  • 1
  • 22
  • 42
2
votes
2 answers

NullPointerException when receiving an array list over a socket

Trying to send an arrayList over a socket, get a null pointer exception at object input stream initialization (client). Client: try { ObjectInputStream objIn = new ObjectInputStream( Client.socket.getInputStream()); // HERE …
Kalec
  • 2,681
  • 9
  • 30
  • 49
2
votes
1 answer

Secure persistence and IPC of encryption keys

I'm working on a simple command-line utility that encrypt/decrypts a small file based on a user-provided passphrase. In order to prevent the user from having to retype his/her passphrase over and over again in short periods of time, I need to come…
tman
  • 89
  • 1
  • 8
2
votes
3 answers

Using Python to communicate with a minecraft server

This question was deleted when I was just about to answer it with some relevant information. I thought that, although it was phrased in a way which made people dislike it, and no code was posted, it was a useful question. As such, I decided to post…
rlms
  • 10,650
  • 8
  • 44
  • 61
2
votes
0 answers

Inter Process Communication via Tornado

I've been working on a Recommender System and so far we just built a simple algorithm, the Neighborhood approach, to work on an e-commerce store. The system was built in Python to make extensive use of its mathematical libraries and it works in a…
Willian Fuks
  • 11,259
  • 10
  • 50
  • 74
2
votes
2 answers

Packets down a named pipe? Single-byte buffer or pre-sized?

I want to send 'packets' of data (i.e. discrete messages) between two programs through named pipes. Given that I have to supply a buffer and a buffer size to read, and given that the read command is blocking (I believe), I either have to have a…
Joe
  • 46,419
  • 33
  • 155
  • 245
2
votes
1 answer

ZeroMQ, have developers dropped .Net binding support entirely?

I am looking for updates to the .Net bindings of the ZeroMQ libraries but do not seem to be able to find any. ZeroMQ is in version 4.0.3 but the only .Net binding offered on its website is version 2.1. And Nuget only seems to have version 2.2.5,…
Matt
  • 7,004
  • 11
  • 71
  • 117
1 2 3
99
100