From owner-freebsd-emulation@FreeBSD.ORG Tue Jul 20 21:59:39 2004 Return-Path: Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D835D16A4CE for ; Tue, 20 Jul 2004 21:59:39 +0000 (GMT) Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.126.184]) by mx1.FreeBSD.org (Postfix) with ESMTP id 235A743D48 for ; Tue, 20 Jul 2004 21:59:39 +0000 (GMT) (envelope-from gwk@rahn-koltermann.de) Received: from [212.227.126.205] (helo=mrelayng.kundenserver.de) by moutng.kundenserver.de with esmtp (Exim 3.35 #1) id 1Bn2e8-0004w3-00; Tue, 20 Jul 2004 23:59:36 +0200 Received: from [217.232.150.205] (helo=[192.168.0.3]) by mrelayng.kundenserver.de with asmtp (Exim 3.35 #1) id 1Bn2e8-00089J-00; Tue, 20 Jul 2004 23:59:36 +0200 From: "Georg-W. Koltermann" To: Marcel Moolenaar In-Reply-To: <20040719215845.GA12055@dhcp50.pn.xcllnt.net> References: <1090273635.1511.15.camel@localhost.muc.eu.mscsoftware.com> <20040719215845.GA12055@dhcp50.pn.xcllnt.net> Content-Type: text/plain Message-Id: <1090360772.1047.5.camel@localhost.muc.eu.mscsoftware.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.6 Date: Tue, 20 Jul 2004 23:59:33 +0200 Content-Transfer-Encoding: 7bit X-Provags-ID: kundenserver.de abuse@kundenserver.de auth:90bcaad5e51ecc993b2919ba4b74e6dc cc: freebsd-emulation@freebsd.org Subject: Re: how to implement linux_gettid X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Jul 2004 21:59:40 -0000 Am Mo, den 19.07.2004 schrieb Marcel Moolenaar um 23:58: > On Mon, Jul 19, 2004 at 11:47:15PM +0200, Georg-W. Koltermann wrote: > > > > Could someone explain how our threading works when accessed from Linux, > > and maybe give me a hint how gettid() should be implemented correctly? > > It depends. If user threading under linux compatibility is still > implemented using fork(2), then you'll have a process per user thread. > In that case it doesn't matter how threading is natively implemented. I am not quite sure. I see that i386/linux/syscalls.master has fork, vfork, and clone. clone is implemented by calling fork1(). Does this make sure that Linux threading is implemented using fork()? Or could it depend on the application or library layer, e.g. libpthread in linux_base? -- Regards, Georg.