lkml.org 
[lkml]   [1999]   [Feb]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Linux Driver - Select Implementation!
    Jeff Epler <jepler@inetnebr.com> wrote:
    >
    > What would the consequences be of a select-like call which had the semantic
    > that only one of the tasks sleeping for that resource was woken (the
    > longest-sleeping, perhaps)? (And, probably, all tasks sleeping because
    > of regular select()) To my naive mind it sounds like a way to avoid
    > the thundering herd problem. Are there unforseen pitfalls in this, or is
    > it more a matter of doing something nonstandard, or of the change requiring
    > widespread kernel changes?

    This thundering herd problem can be solved in userland, if I am not mistaken.
    From what I've read, Apache solves this problem by having a single task do the
    select(), and setting an appropriate semaphore on return. The rest of the
    tasks which would normally do a select() instead wait on this semaphore -- when
    the semaphore is available, a single task is unblocked from waiting on it.

    Charles
    --
    ----------------------------------------------------
    Charles Cazabon <charlesc-linux@qcc.sk.ca>
    Any opinions expressed are just that -- my opinions.
    ----------------------------------------------------


    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:50    [W:0.026 / U:30.220 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site