*BSD News Article 92438


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.ecn.uoknor.edu!news.wildstar.net!news.ececs.uc.edu!news.kei.com!news.mathworks.com!news-peer.gsl.net!news.gsl.net!ix.netcom.com!news
From: Dong Lin <donglin@ix.netcom.com>
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Linux or FreeBSD (or something else?)
Date: Tue, 01 Apr 1997 08:45:03 GMT
Organization: Netcom
Lines: 62
Message-ID: <5hp7oe$6u0@sjx-ixn10.ix.netcom.com>
References: <3337e3ad.1847437@news.sprynet.com> <5hbh2g$gah$1@kayrad.ziplink.net> <333990e3.2587820@news.sprynet.com> <5hlju0$ftk$1@news.belwue.de> <5hmlnk$c3m@dfw-ixnews4.ix.netcom.com> <333EE7B4.237C228A@FreeBSD.org>
NNTP-Posting-Host: wdl-ca2-20.ix.netcom.com
X-NETCOM-Date: Mon Mar 31 12:45:02 PM PST 1997
X-Newsreader: NETCOMplete/3.25
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:38145

In article <333EE7B4.237C228A@FreeBSD.org>,
	"Jordan K. Hubbard" <jkh@FreeBSD.org> wrote:

>Dong Lin wrote:
>> 
>> In article <5hlju0$ftk$1@news.belwue.de>,
>>         schweikh@rubin.noc.dfn.de (Jens Schweikhardt) wrote:
>> 
>> ># What *significant* things can UNIX do that NT4 or 95 can't?
>> 
>> You can't currently write multithreading applications on FreeBSD.  
>> Windows NT:microkernel vs.FreeBSD's monolithic.
>
>That's all complete bollocks, unfortunately.  For one thing,
>"mutlthreading" is something which can take place at two levels, the
>application layer (POSIX threads) and the kernel.  You DO NOT NEED
>kernel threads to do effective multithreaded applications, just working
>user-mode threads (which FreeBSD has, including a specialized version of
>libc which is thread safe).  Some systems, like the Modula3 compiler,
>even provide their own internal threading mechanism and it works just
>great - the popular CVSup package for FreeBSD runs multithreaded that
>way.  Netscape is another internally multithreaded application.
>

Well, there is no pthread.h on my FreeBSD 2.1.5.  User thread is not bad, 
but user thread only work with in that process, and share resource allocated 
to that particular process, so FreeBSD can not do SMP.  I don't know when FreeBSD 
will support SMP, if you want to do SMP, you definatly need to implement kernel 
thread.

>And if you absolutely Must Have kernel threads for something then those
>are available as an add-on for FreeBSD as well - search the mail and
>news archives for the URL to it.  At some point, if we can find a
>serious need, we may bring such kernel thread support into FreeBSD by
>default, but for now the usermode stuff seems to work just fine.
>
Is there one? If it is not there yet, you guys might want to get busy.:)~

>And finally, having a monolithic vs microkernel architecture has NOTHING
>to do with mulithreading!  You can implement kernel threads in either
>architectural model and saying that you need a microkernel design to
>have multithreading is like saying that only left handed people vote
>republican - it's a wholly bogus correlation and you, sir, clearly do
>not understand what you are talking about.
>-- 
The other poster asked some differences between Windows NT and FreeBSD, so 
I said Windows NT is based on microkernel vs. FreeBSD's monolithic kernel. 
I didn't mean only microkernel support multithreading.  Solaris is based on 
SVR4, which has a monolithic kernel but it supports both user and kernel thread.
The education OS used years back in Davis called Minix was microkernel, 
it didn't do multithreading.  I think you just misunderstood what I was saying.
Anyway, thanks for your and the other core member's work and hopefully we will
see FreeBSD supports both user and kernel threads soon.

Best wishes!

-Dong

>- Jordan Hubbard
>  FreeBSD core team / Walnut Creek CDROM.