bug-hurd
[Top][All Lists]
Advanced

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

Re: ppc, darwin, and the hurd


From: Peter Bruin
Subject: Re: ppc, darwin, and the hurd
Date: Thu, 19 Jun 2003 11:31:54 +0200

Hi,

address@hidden wrote:

> From what I understand the darwin kernel is not compatable with the
> mach interface though.

The Darwin kernel doesn't have Mach's device drivers; instead, it uses
Apple's so-called IOKit.  As far as I know, the rest of the Mach
system calls should work, at least if they haven't been disabled.  The
Mach calls are not actually used in Darwin; it seems to be there just
for VM, scheduling and SMP purposes.

> My question is: would it be possible to use the darwin kernel as a
> starting point for getting the hurd to run on more recent ppc
> hardware, and, if so does anyone have any desire to help with this
> project, or at least provide any helpful pointers to a newbie in the
> kernel programming area?

José Marchesi <address@hidden> is porting the OSKit and GNUMach to
the PowerPC (see http://es.gnu.org/~jemarch/ppc-oskit/).  You might
want to help with that, since there are two problems with Darwin: the
lack of Mach devices (see above), and the license under which it is
published (the Apple Public Source License).  This license is not
compatible with the GPL (http://www.gnu.org/philosophy/apsl.html).  I
suppose you could solve both problems (implementing Mach devices
without having to modify Darwin) only by implementing a kind of
`device server', a standalone program which translates Mach device
requests into IOKit calls.  From a practical point of view, this would
probably be the easiest way of getting the Hurd to run on newer PPC
machines, and you also have the possibility of running the Hurd
together with Mac OS.  The drawback is that you depend on non-free
software, however, but on the other hand that won't really be a
problem when GNUMach will also be available.

> Thanks in advance.
> Kyle

Hope this helps.
Thanks,
Peter





reply via email to

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