[lkml]   [1997]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Good point of Linux over Windows NT
    "David S. Miller" <> writes:

    > Date: Mon, 20 Jan 1997 21:37:04 -0500 (EST)
    > From: "Richard B. Johnson" <>
    > Look at the code. It isn't spinning. It schedules. The CPU time
    > isn't wasted. Linux is a Unix variant. Unix does Async like
    > this. VAVen do ASTs (Asynchronous system Trap), NT (borrowed from
    > VAX/VMS) does the same thing but with another name. Neither is
    > BETTER.
    > Kernel level support for async-IO is something that should be at least
    > thought about. From the UNIX's that I've heard actually do it, they
    > limit you to one outstanding async-IO request per task/thread. This
    > seems to suggest it is not a trivial problem to solve at all.

    well, the deal with async io is that it allows a process to keep
    running while it's waiting for io. typically, the process will get
    some signal to tell it that it can pick up the data when it's ready.
    (this, i guess, is why you can't have multiple outstanding requests,
    since each one would need a different signal). the problem withdoing
    this in unix is it's against the basic model where a process goes into
    kernel mode when it's doing io (and other stuff), and is stuck there
    until the kernel is done with whatever its doing.

    one solution in linux is to just launch off another thread to do the
    io which'll get stuck in kernel mode, not the whole process. but this
    is kind of cheesy, and has the overhead of creating a new thread.

    so basically what you need is for a kernel thread to be created to
    handle the async io, and signal (or otherwise...) the process that the
    request is done. i'm not sure about what the barriers are here for
    linux in particular. solaris, for example, has a heavily threaded
    kernel, so this sort of feature is supported.

    > From what I've heard NT allows numerous (unlimited?) outstanding
    > async-IO requests to be queued to the system, and programmers love
    > this. Can someone validate this? It's what I've heard, I want to
    > know if it is true.

    i dunno. i wonder how the kernel informs the threads that the io is
    done. perhaps there is a more flexible system in NT for signalling
    than in linux...

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