[e-lang] E and FUSE-j integration
Kevin Reid
kpreid at mac.com
Wed Sep 26 13:23:28 EDT 2007
On Sep 26, 2007, at 12:51, Toby Murray wrote:
> On Wed, 2007-09-26 at 09:20 -0400, Kevin Reid wrote:
>> On Sep 26, 2007, at 7:11, Toby Murray wrote:
>>> File operations on the filesystem would be implemented using E
>>> remote method invocations.
>>
>> There are two possible kinds of systems here:
>> (a) present a filesystem layout which can express any E message.
>> (b) expect the remote ref to implement a filesystem protocol.
>>
>> (b) is more generally useful and can be used to imp
>
> (b) is what I had in mind. (The sentence seems to have been cut off
> prematurely btw.)
...can be used to implement (a).
(I sent the message incompletely edited; I also forgot to not quote
the entire definition of Filesystem3.)
> The calling thread is then the FUSE event loop, right?
I would assume so. I don't know how FUSE works, but that it has an
event loop makes sense.
> How does the E implementation prevent races between the calling
> (FUSE) thread and the thread that's running the E vat? Or is this a
> non-issue for some other reason?
I don't understand where a relevant race would arise. The FUSE thread
is either blocked waiting for a single response, or idle in its event
loop; in either case, no *other* computation happening in the E
thread has any potential effect upon the FUSE thread.
> Hence, one might be able to assume that the FUSE-j implementation
> of the Linux FUSE protocol could be compatible with the MacFUSE
> protocol. In which case, FUSE-j might run as well on top of MacFUSE
> as it does on Linux FUSE.
I did a bit of searching and apparently it does or did work with
trivial patches.
--
Kevin Reid <http://homepage.mac.com/kpreid/>
More information about the e-lang
mailing list