9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: ron minnich <rminnich@gmail.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] Q: moving directories? hard links?
Date: Fri, 15 Apr 2011 21:22:27 -0700	[thread overview]
Message-ID: <BANLkTinPPbGfsT8EVcZHxedYt+4O1pxmzA@mail.gmail.com> (raw)
In-Reply-To: <8662qej52i.fsf@cmarib.ramside>

interesting questions. They kind of resonate with a discussion I had
with someone recently. The question of feature(X) in linux came up, as
feature(X) was not available in Plan 9. It doesn't much matter what
feature(X) is in this case, since the question is so frequent.

As it happens, feature(X) is not really uniformly available in Linux
either. It sorta works on some types of things, and does not really
work on  most others. Take a simple one: select on an open file.
Doesn't really work, might be useful, so we get inotify. Well, but,
inotify doesn't work on most things, but for those things it doesn't
work on, well, maybe select will work. You end up with the tangled
thicket of overlapping, but incompatible, feature sets that are
almost, but not quite entirely, unlike what Unix was supposed to be:
that's Linux today.

This made me think about the design rules for Linux and Plan 9. From
what I can see on Linux, the rule is: if it will work on something and
make it better, do it. It may not work on most things, but as long as
it works on one, go ahead and plug it in. The Linux rules also happen
to make those few things feature(X) works on fast for some cases. Put
together enough special cases and for those uses that conform to those
cases, you've got a very fast and capable system. Which Linux is. But
there is certainly a great deal of ugliness there.

If you look at what a hard link really is, you'll realize that your
two questions are actually the same question.

On Plan 9, the rule tends to be: if feature(X) can't be implemented in
a way that works for everything, don't do it. No special cases
allowed; it's why mmap is discouraged. This has led to a system that
is quite uniform and a pleasure to use, albeit lower performing than
its competitors in many places.

If you look at what a hard link is, you'll realize why they are not in Plan 9.

Just my take, anyway.

ron



  parent reply	other threads:[~2011-04-16  4:22 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-16  2:36 smiley
2011-04-16  2:40 ` Jacob Todd
2011-04-16  4:22 ` ron minnich [this message]
2011-04-16 16:53   ` erik quanstrom
2011-04-16 17:33   ` smiley
2011-04-16 17:51     ` erik quanstrom
2011-04-21 15:32       ` smiley
2011-04-21 15:43         ` ron minnich
2011-04-16 18:22     ` Bakul Shah
2011-04-21 15:44       ` smiley
2011-04-21 15:49         ` ron minnich
2011-04-21 16:54         ` Bakul Shah
2011-04-21 20:17           ` Richard Miller
2011-04-21 21:10             ` Bakul Shah
2011-04-21 22:41               ` erik quanstrom
2011-04-21 23:17                 ` ron minnich
2011-04-21 23:54                   ` Bakul Shah
2011-04-21 23:55                   ` erik quanstrom
2011-04-22  0:01                     ` ron minnich
2011-04-22  0:04                       ` erik quanstrom
2011-04-22  8:03                 ` Bakul Shah
2011-04-22  8:27                   ` dexen deVries
2011-04-22 13:05                   ` erik quanstrom
2011-04-22 17:47                     ` Bakul Shah
2011-04-24 18:58                       ` erik quanstrom
2011-04-16 18:03   ` Richard Miller
2011-04-16 18:17     ` Skip Tavakkolian
2011-04-16 18:56       ` Rob Pike
2011-04-18  9:08         ` Aharon Robbins
2011-04-18 12:41           ` erik quanstrom
2011-04-18 12:59             ` Lucio De Re
2011-04-18 13:00               ` erik quanstrom
2011-04-18 13:11                 ` Lucio De Re
2011-04-23  3:48                   ` Ethan Grammatikidis
2011-04-21  9:22       ` Balwinder S Dheeman
2011-04-16 16:58 ` erik quanstrom
2011-04-19 15:36 ` Charles Forsyth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BANLkTinPPbGfsT8EVcZHxedYt+4O1pxmzA@mail.gmail.com \
    --to=rminnich@gmail.com \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).