В Linux, почему существует глобальный / dev / stdin файл для всех процессов?

Не должен ли стандартный ввод для разных процессов уникальным? Если да, то должен ли путь к файлу stdin быть как /dev/pid/stdin вместо глобального /dev/stdin ?

У кого-нибудь есть идеи об этом?

/dev/stdin уникален, потому что

  • это символическая ссылка на /proc/self/fd/0
  • /proc/self – это символическая ссылка, которую только просматривает ваш процесс на свой идентификатор процесса

Файловая система /proc – это виртуальная (не реальная ) файловая система, которая имеет возможность отображать разные представления для каждого процесса.

Дальнейшее чтение:

  • Иерархия файловых систем Linux: 1.14. / Proc
  • Red Hat Enterprise Linux 3: Справочное руководство: Глава 5. Файловая система proc