DragonFly BSD
DragonFly kernel List (threaded) for 2003-10
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: Fast user Space Mutexes (aka Futexes)

From: Hiten Pandya <hmp@xxxxxxxxxxxxx>
Date: Tue, 21 Oct 2003 21:13:37 +0100

Matthew Dillon wrote:

    Remember everyone that we are talking about two layers in userland
    here... the core layer is intended to be the LWKT port and will
    include a messaging implementation for all system calls.  Then a POSIX
    layer will be placed on top of that.

    futexes could be integrated into the higher layer (something at the same
    level as the POSIX layer).  The userland LWKT, with kernel support, will
    provide IPC mechanisms if the futex needs it, but this would not prevent
    the futex code from spinning or spin/switching (in userland) on a mutex
    if it wants to.

Also remember that I would eventually like to move the messaging implementation for system calls into an intermediate layer that is run
in userland but loaded by the kernel. For now I'm not worried about
that, we can just have the system call messaging layer directly in libcr.

Just for twinkles, I got half of the futex kernel part done today in the afternoon when I was bored out of my skull. I am finding the kernel part much more simpler to do, and have put it into something called libfutex. I shall work on this more, later on in the week.

Btw, what did you think about adding a lib/ under sys/ ?


Hiten Pandya

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