IPC through anonymous pipes and named pipes
Before we even start working on this topic, let us ask you this. Have you ever done the following:
$ cat some_data | grep data some data
If yes, then you probably call |
a pipe. Where does this come from? Well, you actually pipe the output from one process as an input to another. You can do it with your own code as well – we are not limited to the system’s applications. And we can program this pipe communication in our own code, too. This is a fundamental instrument for the data transfer between processes. Do you remember reading earlier about FIFO files and named pipes? Yes, that’s right – they are the same thing, but is the |
-symbolled pipe the same as them? No! That’s an anonymous pipe. System programmers differentiate between the so-called anonymous pipes and the named pipes. They have different purposes, so both of them are found on Linux systems nowadays. They are created and managed by pipefs...