Это не совсем верно, что «все это файл», а, скорее, что большинство вещей имеют файловый интерфейс.Может показаться, что расщепление волос, но есть разница.Я не думаю, что смогу перечислить все, но приведу несколько примеров.
- Интерфейс для TCP / IP - это файловая система,
/net
предоставляет «файлы» - Текстовый редактор
acme
имеет связанные управляющие файлы, в которые можно записывать текстовые команды для изменения текста в окне - Мышь и клавиатура представлены в виде файлов данных, например,
/dev/mouse
- Система управления окнами
rio
предоставляет интерфейс файловой системы - Веб-браузер
abaco
читает из смонтированной webfs
файловой системы
Интересно, чтоТакое взаимодействие "выпадает" из этой договоренности.Поскольку почти все в тексте где-то находится в файле, вы можете использовать обычные сценарии оболочки для реализации таких вещей, как IRC-клиент (чтение / запись текста непосредственно в сетевой «файл»).
Существует много статей вкаталог /sys/doc
(и в web ) о разработке и реализации Плана 9.