Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 24 Apr 2000 01:03:15 -0700
From:      "Brian O'Shea" <boshea@ricochet.net>
To:        Jason Evans <jasone@canonware.com>
Cc:        A G F Keahan <ak@freenet.co.uk>, freebsd-hackers@FreeBSD.ORG
Subject:   Re: Multithreaded server performance
Message-ID:  <20000424010315.U337@beastie.localdomain>
In-Reply-To: <20000423212115.E31925@sturm.canonware.com>; from Jason Evans on Sun, Apr 23, 2000 at 09:21:15PM -0700
References:  <3903AEA6.FA7CBBAB@freenet.co.uk> <20000423212115.E31925@sturm.canonware.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Apr 23, 2000 at 09:21:15PM -0700, Jason Evans wrote:
> 
> FreeBSD's libc_r does not use clone() or anything similar.  Instead, it is
> a userland call conversion library that multiplexes threads in a single
> process.  This style of threads library should perform well for the type of
> application you are dealing with.

I was under the impression that, because user thread scheduling is done
in user mode, a thread that goes to sleep calling a blocking read()
system call will put the entire process to sleep until that read()
returns (and so all user threads in the process will also be blocked).
Is this correct?

If it is, it sounds like a user thread implementation would be bad for
Mr. Keahan's application, and something like the LinuxThreads port might
be more appropriate.

> 
> Note that there is also ports/devel/linuxthreads, which is based on
> rfork(), which can be made to behave like Linux's clone().
> 
> Jason

Please correct me if I am wrong.

Thanks,
-brian

-- 
Brian O'Shea
boshea@ricochet.net


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000424010315.U337>