Messages in this thread |  | | From | devnull@spaans ... | Date | Mon, 28 Aug 2000 13:03:58 -0400 | Subject | Re: SCO: "thread creation is about a thousand times faster than |
| |
Date: Sun, 27 Aug 2000 22:36:46 -0500 (CDT) From: Dave McCracken <dcm@mccr.org>
I'll also admit signals were always a mess. They never fit very well with pthreads, and we pretty much punted in the early drafts. I added sigwait() to the original draft as a way an application could direct all its signal handling to a single synchronous 'signal handler' thread, but it never addressed the larger question of how to make signals and threads play together.
I'll note that signals is one of the priamry places where Linuxthreads aren't compatible with Posix threads, and most of the various attempts to fix this involved kernel hacks that would have penelized the performance of the kernel in general, not just when dealing with Posix brain damage. (In one case, I believe the estimates were that it would slow signal delivery time by a factor of six.)
So that's probably one of the reasons why some Linux kernel folks have simply taken to referring to Posix threads as being incurably broken. (And we haven't even gotten to pthread_cancel yet....)
- Ted
P.S. I still very firmly believe that given how few systems programmers can really grok asynchronous programming in the kernel, with all of its pitfalls and locking requirements, that giving threads to Applications Programmers is roughly the equivalent of giving a loaded .45 to a chimpanzee. :-)
So I've never been particular fan of threads in user space to begin with.... and so I have a theory that the combination of folks who (a) have good taste, (b) understand Posix threads, and (c) are psyched about trying to bring Posix threads to Linux has been a (lamentably) small number.
There are those who believe that (b) removes any possibility of (a), sort of like Dykstra's comment about exposure to goto causing permanent brain damage making it impossible for that person to write good programs ever again. While I really don't like threads, I don't *think* that's true.....
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |