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

SMP Hurd status report. Some questions, some comments.



Hi list,

I have gotten so far as being pretty comfortable about cross-compiling gnumach, and am
using a custom microkernel now for Hurd. I was easily able to build oskit on Debian/Linux,
and can run all the sample kernels. The oskit smp sample kernel is detecting my two cpu's,
and seems to be working fine.

    I haven't been able to compile much on Hurd yet, as I only have modem connectivity and
can't cvs sources in Hurd. Also, most of my Linux partitions are around 3Gb so I haven't tried
to mount them. I suppose I need to make some tarballs and copy them over to /gnu next.

    Anyways, I wasn't able to cross-compile oskit-mach due to misplaced gnumach and hurd
headers. I have them installed in my Hurd partition which is /gnu

    How should I set up my symlinks so that /usr/i386-gnu/bin/gcc can find these headers?

    Also, what do I need to do to set up an oskit cross compilation environment? Or do I just
build and install oskit for Linux and then let the i386-gnu-gcc compiler deal with it magically.

    In the meantime, I have been reading the gnumach sources and trying to get it to build with
smp support. In gnumach/i386/imps the files seem to want an ENABLE_MP=yes switch, I tried
boldly hacking this into the Makefile, but it was apparently ignored. It seems that whoever made
the configure script didn't include the ability to configure an --enable-smp option. Not sure how
or what all it would entail anyways.

    This is all moot anyways as oskit-mach seems a better candidate for running Hurd on SMP
boxes. With all the hoopla about how Hurd and Mach were designed for multiprocessing from
the very start, I think I'm going to try and focus on getting it working as it is very core feature
that Hurd is fundamentally based upon, and would gain us mucho bragging rights about how
cool Hurd is.

    And this is way out there, but I keep having these weird thoughts about using my GeForce
card as a vector processor, kind of like the old i860 transputer cards, and using its GPU unit
when available to boost my computer speed. It does have registers and such, so it must be
possible to load a value into one of its registers, do something, and read it back. Wouldn't
that be cool! Hmm... ( la la la - the land of chocolate... )

    Oh, ok. Where was I. Right. I have done some rather exhaustive searches on the web for
documentation about Mach and it looks pretty bleak. There are tons of broken links to old
Mach documentation, and the one book that looked cool _Programming_Under_Mach_ is
long out of print and not available anymore.

    I read that Roland was working on writing a book on oskit-mach and Hurd, that would be
a very nice thing to have considering that Mach is about 15 years old, mostly undocumented
now, and is the very core of this OS at the moment. Hey Roland, can I buy a postscript copy
of your manuscript please? Well thats where I'm at, can run oskit smp sample kernel, but can't
quite build oskit-mach yet. Maybe next week...

Cheers!
- Doug

Attachment: signature.gpg
Description: application/gpg-signature

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


Reply to: