bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Custom interface questions.


From: Thomas Bushnell, BSG
Subject: Re: Custom interface questions.
Date: 01 Mar 2004 23:14:05 -0800
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3

Rian Hunter <hurd@thelaststop.net> writes:

> I'm writing a Hurd server that uses its own custom interface (ie does
> not implement io_write, io_read rpcs etc). Is this correct? Should all
> Hurd servers be required to handle the standard Hurd rpcs since the
> nameserver for ports is basically the filesystem? I tried a test client
> and server program but the client froze upon execution (at the
> file_name_lookup call) and ls would freeze too in the folder where the 
> active translator was located. I figured this is because ls (or
> file_name_lookup()) is calling some io_ call or fsys_ rpc that my server
> doesn't implement and it gets stuck waiting forever.

If you want to be part of the filesystem, you must implement the fsys_*
calls.  You must also implement the file_* and io_* calls for the node
you are inserting into the filesystem.

The trivfs library exists to do all this for you so that you don't
have to think about it.

> Also, for Mach IPC, is a nameserver of some sort is always necessary?

Depends on the value of "of some sort".  In the Hurd, the filesystem
serves as a nameserver.

> Would a mach_port_t value of 59 mean the same actual port for two
> different running programs? (i'm guessing no) 

No.  Mach port IDs are task-specific exactly the same way Unix file
descriptors.

Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]