Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 18 Nov 1998 20:59:40 -0800 (PST)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        Joel Ray Holveck <joelh@gnu.org>
Cc:        Marius Bendiksen <Marius.Bendiksen@scancall.no>, Terry Lambert <tlambert@primenet.com>, rnordier@nordier.com, freebsd-hackers@FreeBSD.ORG
Subject:   Re: FreeBSD on i386 memory model
Message-ID:  <199811190459.UAA07948@apollo.backplane.com>
References:  <199811171806.LAA03809@usr09.primenet.com> <3.0.5.32.19981118121341.00975ac0@mail.scancall.no> <199811181842.KAA06180@apollo.backplane.com> <86ogq4gv1v.fsf@detlev.UUCP>

next in thread | previous in thread | raw e-mail | index | archive | help

:>> have a separate 'interrupt stack'.  On Intel cpu's, however, the
:>> abstraction is useless due to the completely broken ring design
:>> because many supervisor instructions only work in ring 0.  ring 1
:>> and ring 2 are almost completely useless.
:
:So they're useless (for our purposes); I don't see why that makes
:their ring design broken.
:
:Could you please explain a bit more?
:
:Happy hacking,
:joelh

    The biggest single problem to Intel's ring design is their stack
    pointer methodology.  Rather then keep track of each ring's stack
    pointer in a hardware register like, say, the motorola architecture,
    the IA pushes the old %esp onto the stack and loads the new one
    from the cpu Task structure.  This results in completely non-reentrant
    stack switching unless the interrupt/call procedure pops the saved %esp
    off the stack on entry, figures out which ring it came from, and re-stores
    it into the cpu Task structure before proceeding, then pulls it out of
    the cpu Task structure and pushes it back onto the stack prior to 
    returning.

    In anycase, I could go on for hours about deficiencies in IA gating. 
    That's just the tip of the iceberg.

						-Matt

:-- 
:Joel Ray Holveck - joelh@gnu.org
:   Fourth law of programming:
:   Anything that can go wrong wi
:sendmail: segmentation violation - core dumped
:
:To Unsubscribe: send mail to majordomo@FreeBSD.org
:with "unsubscribe freebsd-hackers" in the body of the message
:

    Matthew Dillon  Engineering, HiWay Technologies, Inc. & BEST Internet 
                    Communications & God knows what else.
    <dillon@backplane.com> (Please include original email in any response)    

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?199811190459.UAA07948>