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>