From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Sun, 16 Nov 2008 18:30:36 +0000 From: Eris Discordia To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Subject: Re: [9fans] Do we have a catalog of 9P servers? Topicbox-Message-UUID: 46764134-ead4-11e9-9d60-3106f5b1d025 Finally, one very remarkable remark . Ron Minnich clarifies what _is_ indeed the advantage of Plan 9. I hope those who have followed this thread so far at last see what I was driving at. The edge of Plan 9 was never in kernel space but in user space. To put it in the abstract terms I understand: existence of a neutral scheme of networking is the _one_ and _only_, and _huge_ advantage of Plan 9. It is not coding practice, clarity of vision, being favored by "hackers of the old," protocol X of Y repute, ease of implementing a protocol, or any other obscure, subjective non-technicality that distinguishes your beloved OS, 9fans--it's the complete network neutrality of the OS. UNIX invented pipes that originally began and ended on one machine (ever wondered why everyone remembers UNIX with pipes?). That was application neutrality of I/O (what is a computer's most important task? to transmute I till it's O). Plan 9 invented "pipes" that began and ended on any machine. That was network (and application) neutrality of I/O. The next step towards free-form computing. Thank you very much, Ron Minnich. I am edified. --On Sunday, November 16, 2008 10:01 AM -0800 ron minnich wrote: > On Sun, Nov 16, 2008 at 9:17 AM, erik quanstrom > wrote: > >> i think it is a bit easier. the plan 9 kernel is simplier. >> but that's beside the point. plan 9 network does more >> with less than bsd. /net is more expressive than sockets. >> the dial interface is quite elegant. plan 9 telnet works >> just fine with il and most other connection-based protocols. >> > > I don't think the main point is simplicity, although it is nice. The > big point to me: network object names are not binary objects but > pathnames. > > Which is why a 386 can mount /net from a ppc and dump the routing > tables. With a shell script. > > So, as has been pointed out many times: > 1. Cost to migrate all unix apps to ipv6: let's just say "high" -- we > won't know until they've all moved. > 2. Cost to migrate all unix apps to infiniband addresses with 20-octet > MAC addresses: "high". SIX YEARS LATER, you still have to manually > patch all of dhcpd to manage 20-octet MAC addresses. > And some parts of the Linux kernel still dont' always agree with other > parts about what an IB mac address looks like. > 3. Cost to migrate Plan 9 apps to either of these: *zero*. They're > pathnames. > > I still recall how unhappy many of us were when we got BSD sockets > with binary names. It was just nausea-inducing. It didn't have to be > that way: "/dev/tcp" was being worked on for Unix at the time, but it > just didn't quite work out. /proc was in the future at that point ... > > Plan 9 restored sanity: names of things are paths, not obscure binary > structures that could not be used without htons and their ilk. > > But the brokenness of the bsd interface is so ingrained that most > people take it for granted: "you can't name a socket like you name a > file" -- who says? > > ron >