Re: Threads in linux.

Nix (nix@esperi.demon.co.uk)
01 Sep 1999 07:59:39 +0100


Vladimir Dergachev <vdergach@math.upenn.edu> writes:

> Linux kernel has a system call "clone" which does for threads what "fork"
> does for processes.

? No, it clones things. That's all. It clones processes and provides
finegrained control over the resources (VM, PPID, &c) to share when this
is done.

Threads are not a distinct entity in Linux (and rightly so).

> If you think about it the library is always faster than a system call -
> because you don't have to make a context switch. In windows (IMHO) the

? System calls do not necessarily involve context switches anyway. If
every system call switched process context the system would be slow as
anything due to cache thrashing.

> In windows NT the kernel is called mach (it's a microkernel)

*boggle* It's over 800K. Not very `micro'.

Oh, and it's not Mach.

I've persistently heard this `NT has a microkernel' argument, and it
seems to me it's tosh. NT is heavily internally layered, sure, but
layering != microkernel.

-- 
'- I can't believe my room doesn't have Ethernet!  Why wasn't it wired
   when the house was built?
 - The house was built in 1576.' --- Alex Kamilewicz on the Oxford
                                     breed of `conference American'.

- 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/