В качестве примера я возьму протокол файловой системы Plan9 под названием 9P (a.k.a Styx).
Как говорится в статье в Википедии:
9P - это сетевой протокол, разработанный (...) как средство соединения компонентов.
системы Plan 9
Я хочу знать, с точки зрения программирования, какие технологии следует использовать для создания такой системы модульной связи. И каковы требования к операционной системе (прочитайте производные Unix) для поддержки этого протокола.
В моем понимании каждый компонент ( id , приложение, модуль) всей сети должен иметь частный контроллер (или этот контроллер должен быть общим для всей системы?), Чтобы отправлять запросы и получать ответы, с возможностью выполнять задачи перевода между внутренней логикой отдельного приложения и самим протоколом связи (может быть конкретный язык, такой как XML ?, база данных, или даже какое-то отражение информации в файловой системе?). С этой (моей) точки зрения описанная система может быть определена как вариант клиент-серверной архитектуры, но была спроектирована для локальной или ограниченной сети и с акцентом на прямой доступ к данным и эффективность. Вот как я вижу дизайн протокола файловой системы ...
Я только что начал изучение методов взаимодействия процессов и приложений операционных систем и хотел бы разработать мини-протокол файловой системы, чтобы увидеть эти концепции в действии. У меня нет никакого реального и конкретного плана работы из-за утечки теоретических основ, поэтому любые объяснения, литературные предложения, примеры и просто комментарии будут приветствоваться!