Re: Some Hurd and Mach programming questions
On Fri, May 19, 2000 at 02:19:40PM +0200, Mark Kettenis wrote:
> Date: Fri, 19 May 2000 13:24:13 +0200
> From: Tomasz Wegrzanowski <maniek@beer.com>
>
> Mach/MIG related :
>
> 3.
> How good is MIG ?
> What special, non-obvious features are really in use if
> compared to interface build on :
> write (port, (int)sizeof(request), sizeof(int));
> write (port, request, sizeof(request));
> and
> read (port, &size, sizeof (int))
> request = malloc (size);
> read (port, request, size);
>
> I dont understand what you mean here.
How much of IPCing really needs MIG and
couldn't be done by some set cpp macros or other way that
don't need inventing a new language (.defs) ?
> 5.
> Does using lowest level Mach calls for IPC make any sense ?
>
> This is done in several places in the Hurd. Grep for mach_msg. In
> most cases this is done to circumvent limitations of MiG. It makes
> only sense to do this in code that's really Mach-specific. Avoid it
> if you want your code to be usable if the Hurd ever runs on a
> different microkernel.
Is using MIG any more portable ?
> 7.
> What would be needed for Linux-based microkernel to replace Mach if
> it had nice support of user-space filesystems and Hurd uids ?
>
> The Hurd uses quite a number of Mach-specific features. The most
> important ones missing from Linux are probably sane thread support and
> an external paging interface. Implementation of user-space
> filesystems and Hurd uids wouldn't be a problem. But I don't think
> Linux will ever be a real microkernel, and I'm not sure if trying to
> get the Hurd running on Linux would be such a good idea.
Runing on top of Linux microkernel you have *all* device drivers,
KGI for free, probably all net protocols and similar goodies
( depend on way of micro-kernelizing Linux )
and quite good performance to start with.
Reply to: