Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 27 Nov 2000 17:17:37 -0800
From:      Michael Williams <michaelw@IPRG.nokia.com>
To:        Greg Lehey <grog@lemis.com>
Cc:        Jake Burkholder <jburkhol@home.com>, smp@FreeBSD.ORG
Subject:   Re: BSD/OS interrupt code
Message-ID:  <3A2307B1.A2715334@iprg.nokia.com>
References:  <grog@lemis.com> <20001127015006.5B7BDBA7A@io.yi.org> <20001127122736.G27697@echunga.lemis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
One application Solaris has for this "trick" of building handlers on the fly, is
to install debugging/verbose handlers dynamically, especially where the initial
handlers do some vectoring (small branches) before jumping off to do hard work.
The miss handlers do this for example.

As far as which instruction format is "simple", I'm curious, why do you suggest
x86 as an example?

Cheers,
Michael

Greg Lehey wrote:

> On Sunday, 26 November 2000 at 17:50:06 -0800, Jake Burkholder wrote:
> >> 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.
>
> That's a reasonable objection.  Where's your program?
>
> Greg
> --
> Finger grog@lemis.com for PGP public key
> See complete headers for address and phone numbers
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-smp" in the body of the message



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




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