4 ms·
Well, the problem with Plan 9 is that it requires everything support the Plan 9 protocol. The entire stack has to speak Plan 9, otherwise nothing works. So an
by sillysaurus2 13y ago
Well, the problem with Plan 9 is that it requires everything support the Plan 9 protocol. The entire stack has to speak Plan 9, otherwise nothing works. So anything that interacts with it would have to support the full protocol, whereas Unix is just "pipe this output stream into that input stream," which is quite a lot easier to adopt.
- p9idf 13y agoIt's not unusual for an operating system to require its programs to use its system calls. A Unix program that doesn't speak Unix protocols is just as useless as a Plan 9 program that doesn't speak Plan 9 protocols. It's a moot point though, since you'd have a difficult time unwittingly making a compiler generate a program that doesn't work on its own operating system. Pipes on Plan 9 use the same pipe, read, write, and close system calls as Unix does; they are an equivalent amount of work to use (or adopt, as you say).
- throwaway2048 13y agoits important to note that "speaking the plan9 protocol" amounts to normal file operations like read(), write(), stat() etc. This also works fine with pipes.