4 ms·
> Why would you need to communicate with any process? Maybe I need to communicate with the currently running instance of "HTTP Server App" or "Database Engine A
by Khoth 7y ago
> Why would you need to communicate with any process? Maybe I need to communicate with the currently running instance of "HTTP Server App" or "Database Engine App", not with an unrelated process my program knows nothing about.
Today, I piped the output of some process I was running into grep. Neither of these programs knew about the existence of the other.
Later, I used an image editor to create an image, then used a web browser to upload it to a website. The web browser and image editor were unaware of each other's existence.
- bluetomcat 7y ago> Today, I piped the output of some process I was running into grep. Neither of these programs knew about the existence of the other. Only because "an unstructured stream of bytes" is the way for Unix processes to communicate. It allows for composability, but a very fragile and unsafe one, requiring programs to spit out and read free text, with all the crazy filtering and guesswork needed.
- garmaine 7y agoYou could pipe structures data. See: PowerShell.
- jnurmine 7y agoFree text? You can just as well pipe structured binary data (such as audio or images) through one or more processing elements. The processors need to understand the data, of course. There are also other IPC mechanisms, like D-Bus.