*BSD News Article 57408


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.mel.connect.com.au!munnari.OZ.AU!news.ecn.uoknor.edu!paladin.american.edu!gatech2!swrinde!howland.reston.ans.net!newsfeed.internetmci.com!in1.uu.net!iglou!heathers.stdio.com!usenet
From: risner@stdio.com
Newsgroups: comp.unix.bsd.freebsd.misc,comp.unix.advocacy
Subject: Re: Win32 CreateThread() vs Unix fork()
Date: 10 Dec 1995 06:20:18 GMT
Organization: Image Tech Computing
Lines: 32
Message-ID: <4adu72$nkf@heathers.stdio.com>
References: <4ab85f$idq@news.voicenet.com>
Reply-To: risner@stdio.com
NNTP-Posting-Host: os2
X-Newsreader: IBM NewsReader/2 v1.2
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:10918 comp.unix.advocacy:12436

In <4ab85f$idq@news.voicenet.com>, 900RR (900RR) writes:
>
>Win32's CreateThread() is an extremely fast and efficient way of
>
>By contrast, Unix uses fork() to start an entire new process to

>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?
No.

FreeBSD (and any other current UN*X) implements fork() as creating a new
process (slightly more overhead than creating a new thread) and performs
copy-on-write so that it maps in the old process text segment and data segment.

Look at http://corp.novell.com/press/pr95251.htm
It has a article from ZIFF which compares NT and various commercial UN*X
systems.  UnixWare was VERY NEARLY twice as fast in terms of transactions
per second as compared to NT.  SCO was around 50% faster than NT.
I would be interested in seeing a test compare of servers for Linux, FreeBSD,
UnixWare, SCO, NT, OS/2 because this article did not contain any free UN*X tested.

I think you will find that the UN*X camp will fair better than NT in most 
multi-process/multi-thread arena simply from maturity.  There are a lot of issues
to deal with for NT.

Risner

The only UN*X which NEEDS special documentation is LINUX!
Long live V7; Skip Solaris 2.x; FreeBSD IS the PC UN*X