Messages in this thread | | | Date | Thu, 3 Sep 1998 02:00:59 -0400 | From | "Eric S. Raymond" <> | Subject | Re: Linux tcp/ip code has trouble with async network I/O notification,u |
| |
Kaz Kylheku <kaz@espresso.cafe.net>: > On Thu, 3 Sep 1998, Wim Ten Have wrote: > > I think that there is a major ;-) problem around in the Linux TCP/IP > > code when using Async (SIGIO) controlled network code setups. > > Async IO is an outdated paradigm anyway. Try using threads.
There are two things seriously wrong with this response:
Firstly, even bugs in soi-disant "outdated" kernel features are bad, and worthy of attention to fix them.
<flame>
Secondly, threads suck. They're currently fashionable, but it's by no means clear that they're any improvement on asynchronous I/O.
I say this because threads encourage in the time domain all the same kinds of aliasing havoc that you can get by being careless with pointers in the spatial domain. It's way too hard to mentally model or make provable assertions about the global state of a multi-threaded program.
Monitors communicating through message queues are a much more tractable way to control concurrency, as in Hoare's CSP or Mark Miller's E language or (surprise!) Unix's classical process-connected-by-pipes.
</flame> --
- 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.altern.org/andrebalsa/doc/lkml-faq.html
| |