As an example, I will select a Plan9 file system protocol called 9P (aka Styx). As stated in the Wikipedia article:
9P is a network protocol developed (...) as a means of connecting Plan 9 system components
I want to know, in terms of programming, which technologies should be used to create such a modular communication system. And what are the requirements for the operating system (read Unix derivatives) to support this protocol.
In my understanding, each component (id est, application, module) of the entire network should have a private controller (or should this controller be shared through the system?), Send requests and receive answers, with the ability to perform translation tasks between the internal logic of a separate application and the communication protocol itself (can it be a specific language, such as XML ?, a database, or even some kind of reflection of information in the file system?). From this (my) point of view, the described system can be defined as a variant of the client-server architecture, but is projected into a local or limited network and with an emphasis on direct access to data and efficiency. This is how I see the file system protocol design ...
I was just starting to learn the methods of connecting processes / applications of the operating system and would like to develop a mini file system protocol to see these concepts in action. I do not have a real and concrete work plan due to a leak of theoretical foundations, so any explanations, suggestions from the literature, examples and just comments will be welcome!
source share