9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Bakul Shah <bakul@bitblocks.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] Multi-dimensional filesystem
Date: Wed, 15 Aug 2012 20:47:47 -0700	[thread overview]
Message-ID: <20120816034747.7FE5EB85B@mail.bitblocks.com> (raw)
In-Reply-To: Your message of "Wed, 15 Aug 2012 23:27:34 +0200." <20120815212734.GA1190@polynum.com>

On Wed, 15 Aug 2012 23:27:34 +0200 tlaronde@polynum.com  wrote:
>
> I will give two (DeLuxe(R) version!) examples.

Thanks. Sounds like you are taking about IS-A and HAS-A
relationships.

> 2) In 9P, the ".." if I'm not mistaken is not here. One can request a
> file, or go back to the previous one. The ".." including "path removing"
> is not implemented in 9P if I read correctly the manpage. So a client
> can speak 9P, but the way the stuff are presented will be mainly in the
> server, the trick to allow existing clients to browse being this ".+"
> and ".-": ".+" leads to children; ".-" leads to parents and a DESC file
> being perhaps a text description, and some fake parenting allowing a
> request of ".." to trigger a special action from the server---but all
> these are artefacts of the server.

Looks like you are treating ".+" & ".-" specially *somewhere*.
Are foo/.- and foo/bar treated differently?  What would
"foo/.-" even mean? What would open("foo/.-", mode) do?

When I try to work out an example I don't get how you can
implement this.  May be you can use your special syntax to
present an example or two as shell scripts?

In any case since multiple relationships are possible, why
single out a specific case? That is, it seems to me you can
either use the current 9p as is and implement what you want by
convention in your programs or extend the model in a major way
(which is where I was going).

> >From a very cursory look, it seems to me that it could be simpler to
> implement this with Plan9, because it is relatively agnostic about what
> is a filesystem, than with an Unix if I take into account the
> difficulties Unix kernels have with userland filesystems---probably
> because a lot of semantics are assumed in the vnode subsystem.

You can use fusefs to implement a plan9 like synthetic
filesystems. But compared to plan9 the unix model is indeed
far more constrained and a lot more complicated -- you should
see Linux's /sys synthetic filesystem -- it is also a good
exmaple of what multiple inheritance wreak.



  reply	other threads:[~2012-08-16  3:47 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-03 17:18 tlaronde
2012-08-03 18:58 ` Skip Tavakkolian
2012-08-03 19:25   ` tlaronde
2012-08-03 21:08 ` Burton Samograd
2012-08-03 21:12   ` Kurt H Maier
2012-08-03 21:17     ` Burton Samograd
2012-08-04  6:13   ` tlaronde
2012-08-04 10:56     ` Aram Hăvărneanu
2012-08-04 15:00       ` tlaronde
2012-08-04 12:16 ` Nicolas Bercher
2012-08-04 15:20   ` tlaronde
2012-08-05 15:29     ` Charles Forsyth
2012-08-05 17:36       ` tlaronde
2012-08-15 16:04         ` Eugene Gorodinsky
2012-08-15 17:33           ` tlaronde
2012-08-15 20:09             ` Bakul Shah
2012-08-15 20:17               ` erik quanstrom
2012-08-15 21:00                 ` Bakul Shah
2012-08-16  1:38                   ` erik quanstrom
2012-08-16  4:06                     ` Bakul Shah
2012-08-16 13:45                       ` erik quanstrom
2012-08-15 21:27               ` tlaronde
2012-08-16  3:47                 ` Bakul Shah [this message]
2012-08-16  5:34                   ` tlaronde
2012-08-16 13:40                     ` erik quanstrom
2012-08-16 15:41                       ` tlaronde
2012-08-16 16:06                         ` erik quanstrom
2012-08-16 16:28                           ` tlaronde
2012-08-16 15:59                       ` Bakul Shah
2012-08-16 16:31                         ` tlaronde
2012-08-16 16:48                         ` Burton Samograd
2012-08-16 17:02                 ` Eugene Gorodinsky
2012-08-16 19:48                   ` tlaronde
2012-08-16 20:11                     ` erik quanstrom
2012-08-17  6:48                       ` tlaronde
2012-08-17  7:48                         ` Lucio De Re
2012-08-20 15:17                           ` tlaronde

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=20120816034747.7FE5EB85B@mail.bitblocks.com \
    --to=bakul@bitblocks.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).