From owner-freebsd-smp Sun Nov 26 17:50: 8 2000 Delivered-To: freebsd-smp@freebsd.org Received: from io.yi.org (unknown [24.70.218.157]) by hub.freebsd.org (Postfix) with ESMTP id 65E0B37B479 for ; Sun, 26 Nov 2000 17:50:06 -0800 (PST) Received: from io.yi.org (localhost.gvcl1.bc.wave.home.com [127.0.0.1]) by io.yi.org (Postfix) with ESMTP id 5B7BDBA7A; Sun, 26 Nov 2000 17:50:06 -0800 (PST) X-Mailer: exmh version 2.1.1 10/15/1999 To: Greg Lehey Cc: smp@FreeBSD.ORG Subject: Re: BSD/OS interrupt code In-Reply-To: Message from Greg Lehey of "Mon, 27 Nov 2000 10:41:48 +1030." <20001127104147.B27186@echunga.lemis.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 26 Nov 2000 17:50:06 -0800 From: Jake Burkholder Message-Id: <20001127015006.5B7BDBA7A@io.yi.org> Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > On Sunday, 26 November 2000 at 14:07:49 -0800, Jake Burkholder wrote: > > Hi, > > > > If anyone with access to the BSD/OS code is interested, I've written > > a little program that runs their interrupt stub code generator in > > userland. You can then abort(); and disassemble the stub from > > the core dump to look at the code all in one piece. Makes it much > > easier to follow. > > > > In case you haven't looked, their interrupt handlers are generated > > by bcopy-ing various blocks of assembler code into an array at > > runtime, and then poking in arguments and relocating branches. > > Interesting. I was wondering whether something similar would be a > good idea. On the other hand, We don't waste much space by having > multiple alternate stubs. What's your feeling? I suspect that it would be hard to do this for architectures other than x86, which has a relatively simple instruction format. I also think that BSD/OS went a little too far with this, and have produced code that is very difficult to understand, let alone maintain. I think its cool what they did, I'm humbled and amazed that they made it work, but I don't know that its right for FreeBSD. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message