Date: Fri, 22 Apr 2005 15:02:15 -0700 From: David Leimbach <dleimbac@gmail.com> To: Julian Elischer <julian@elischer.org> Cc: FreeBSD Hackers <freebsd-hackers@freebsd.org> Subject: Re: libthread 1:1 threads Message-ID: <5bbfe7d4050422150226c6712d@mail.gmail.com> In-Reply-To: <426953C5.9080502@elischer.org> References: <5bbfe7d40504220842578b2d2d@mail.gmail.com> <426953C5.9080502@elischer.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 4/22/05, Julian Elischer <julian@elischer.org> wrote: >=20 >=20 > David Leimbach wrote: >=20 > >Perhaps David Xu could clue me in a bit more :) > > > >I just got around to reading the status report for FreeBSD and the 1:1 > >threading caught my eye. > > > >I'm not terribly familiar with FreeBSD's KSE based threading but > >rather than adding a new system call [which may be ok... though I've > >worked on systems where a minimal set of system calls is the desired > >approach.. usually microkernels] would it be possible to add KSEs to a > >task using rfork()? > > > > >=20 > KSE and 1:1 threading are different things. > One creatres kernel threads on demand and the other keeps the kernel > threads all the time the user thread exists. >=20 Ah interesting. > rfork is not the same.. it creates a new process context. that is what > Linux does. > it is also what we did before when running the the linuxthreads package. >=20 According to the man page, and plan 9 where rfork originated you can use it to modify an extant process. In fact you have to set the RFPROC flag to make a new process or all the changes apply to the current one. Either that or the man page is wrong. > KSE and 1:1 use a lot of the same kernel changes and entities. > Which one survives will be judged in time. >=20 > >Maybe I've just been playing around with Plan 9 too much lately :) > > > >Anyway, I like that there will be a 1:1 threading library and if I had > >more free time and wasn't working on other projects I'd be more than > >willing to help test and work on/with this. > > > > >=20 > there has been a 1:1 and an M:N library since 5.2 >=20 Yeah but I took a bit of a FreeBSD hiatus around 5.0/5.1 and am just now poking around again so it's all new to me :). Dave
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5bbfe7d4050422150226c6712d>