*BSD News Article 57303


Return to BSD News archive

Newsgroups: comp.unix.bsd.freebsd.misc,comp.unix.advocacy
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!nntp.coast.net!news.kei.com!newsfeed.internetmci.com!howland.reston.ans.net!newsserver.jvnc.net!jvnc.net!lazlo
From: jlucas@uvi.edu (John Lucas)
Subject: Re: Win32 CreateThread() vs Unix fork()
Message-ID: <DJBt1u.GFD@tigger.jvnc.net>
Sender: news@tigger.jvnc.net (Zee News Genie)
Organization: University of the Virgin Islands
X-Newsreader: News Xpress Version 1.0 Beta #3
References: <4ab85f$idq@news.voicenet.com>
Date: Sat, 9 Dec 1995 15:42:16 GMT
Lines: 36
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:10784 comp.unix.advocacy:12369

In article <4ab85f$idq@news.voicenet.com>, 900RR (900RR) wrote:
>
>Win32's CreateThread() is an extremely fast and efficient way of
>implementing multi-threaded, multi-user server applications (like Web
>servers). Threads are then run on individual processors in SMP boards,
>further boosting throughput.
>
>By contrast, Unix uses fork() to start an entire new process to
>service client requests. MP unixes could then run these whole
>processes on different CPU's.
>
>In any case, does anyone know how much more efficient a server
>application could run under an NT system than the same app, same
>hardware on something like FreeBSD or Linux? 
>
>Do veteran Unix programmers avoid fork() like the plague?
>

There are versions of "Unix" that support threaded execution: NextStep, Mach, 
OS/F-1 and AIX (there are probably more). NetBSD apparently supports user-level 
POSIX threads with some plans to make a threaded kernal an option.

There is a discussion about adding POSIX threads to FreeBSD, but I got no answer 
to my query about plans to support them in FreeBSD's future. If anyone knows 
anything about plans for POSIX threads in FreeBSD (user-level and/or 
kernal-based) please let me know; I would like to see if Dartmouth's "BlitzMail" 
could be ported to FreeBSD and it requires POSIX threads or "cthreads".

Threads are just another name for "lighweight process"; you often need 
"heavyweight processes" too. :-}


| John Lucas                               jlucas@uvi.edu |
| Academic Computing                   NIC Handle: JL423  |
| University of the Virgin Islands        (809) 693-1216  |
| St. Thomas, VI 00802     http://www.uvi.edu/jlucas.html |