Hello, after my current research on that topic, I fear that my question is probably way too broad and unspecific, as there seem to be multiple viable ways, so I try to narrow it down. First of what is my motivation? I try to implement these standard file descriptors within a practice operating system, in order to get file-system specific system calls like open, read, write and close to work. What I currently (believe to) know: - The standard file descriptors are an abstraction layer in between an output device like a monitor and an input device like a keyboard. In the old days, these were configured directly to the terminals. - In glibc (https://github.com/bminor/glibc/blob/master/libio/stdfiles.c), they are defined there as FILE struct instances that associate to the specific file descriptors. - I can locate the file descriptors of a specific process within Linux under: /proc/{process_id}/fd/{0,1,2} root@basti:/proc/self# ls -l fd total 0 lrwx------ 1 root root 64 Oct 7 07:54 0 -> /dev/pts/4 lrwx------ 1 root root 64 Oct 7 07:54 1 -> /dev/pts/4 lrwx------ 1 root root 64 Oct 7 07:54 2 -> /dev/pts/4 lrwx------ 1 root root 64 Oct 7 07:54 255 -> /dev/pts/4 they all point to /dev/pts/4, if I look in the /dev/pts directory: root@basti:/dev/pts# ls -l total 0 crw--w---- 1 basti tty 136, 0 Oct 7 07:53 0 crw--w---- 1 basti tty 136, 1 Oct 6 20:59 1 crw--w---- 1 libvirt-qemu tty 136, 2 Oct 4 16:27 2 crw--w---- 1 basti tty 136, 3 Oct 7 07:56 3 crw------- 1 basti tty 136, 4 Oct 7 07:56 4 c--------- 1 root root 5, 2 Oct 4 12:10 ptmx Here I can see that they all point to a character device, with the group tty. And I know that /dev/pts/4 is a pseudeo teletype, which is a slave of the ptmx multiplexor. The gaps I currently have: - Who creates that device /dev/pts/4 ? I was currently not able to locate this information. - How is that device connected to my keyboard/monitor? - Could I maybe create a simplified version, which just utilizes a file for STDIN, STDOUT, STDERR. That are created by the init process and inherited to all child processes? Maybe I could then redirect the keyboard output to the STDIN file, the STDOUT file to the monitor device etc. Thanks in advance for any help! Greetings Sebastian _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies