On Sun, Nov 16, 2008 at 9:17 AM, erik quanstrom <[EMAIL PROTECTED]> 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

Reply via email to