From owner-freebsd-hackers Fri Nov 7 19:28:46 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id TAA13171 for hackers-outgoing; Fri, 7 Nov 1997 19:28:46 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from d198-232.uoregon.edu (d198-232.uoregon.edu [128.223.198.232]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id TAA13161 for ; Fri, 7 Nov 1997 19:28:42 -0800 (PST) (envelope-from mini@d198-232.uoregon.edu) Received: (from mini@localhost) by d198-232.uoregon.edu (8.8.5/8.8.5) id TAA20475; Fri, 7 Nov 1997 19:27:15 -0800 (PST) Message-ID: <19971107192715.29070@micron.mini.net> Date: Fri, 7 Nov 1997 19:27:15 -0800 From: Jonathan Mini To: Mike Smith Cc: hackers@FreeBSD.ORG Subject: Re: x86 gods; advice? Suggestions? References: <19971107181614.32380@micron.mini.net> <199711080238.NAA00641@word.smith.net.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.85e In-Reply-To: <199711080238.NAA00641@word.smith.net.au>; from Mike Smith on Sat, Nov 08, 1997 at 01:08:13PM +1030 X-files: The Truth is Out There Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Mike Smith stands accused of saying: > > > > > It has to run with DPL = 0. > > > > > > > > Why? > > > > > > Because it has to in order to meet the spec. If you're interested, or > > > think you have some ideas on this, you can grab the spec from > > > microsoft's website. Make sure you get the clarification as well, as > > > there's a very confusing error in one of the critical digrams... > > > > hehehe. It should be possible to just give it i/o access to all of the ports, > > or if you feel parinoid, just a subset, and then ``emulate'' the exception 13 > > instruction cases. (there aren't many) > > Ugh. You are taking a very small piece of code and making it *very* > complicated. It *must* be called from inside the kernel because at the > point where it's needed there is nowhere else to be calling it from. You are correct. It would make the code a lot more complex. > > Personally, I feel very insecure running a BIOS at DPL = 0. I certainly > > woulndn't like letting third party software muck with everything. (even if it > > is on a ROM (ok, a flashable ROM)) > > Like I said, if you have a better idea, I am seriously interested in > pursuing it. Well. Te only thing I can think of is to set up a task gate that will 'jump' you into a 32bit protected mode TSS, preferably the one where you started. (I'm assuming the kernel's) When is this code being run? Are we talkign about a during-boot-cycle type setup, or is the scheduler online and tickign away at this point in time? > > > > It's actually pretty easy; with any luck I'll be happy enough with the > > > vm86 stuff to commit it tomorrow. > > > > Hear me cheer! I have been working on vm86 BIOS/DOS interaction for a while > > now for my own projects. If you have something elegant it will be a godsend. > > :) > > It's not entirely elegant, or even mostly mine, but there's a single-line > call you can make anywhere (once its safe to sleep) inside the kernel that > will run a vm86-mode interrupt for you. Hmm. I'. not using kernel code for this. (it's all userland) > > mike > > -- Jonathan Mini Ingenious Productions Software Development P.O. Box 5693, Eugene, Or. 97405 "A child of five could understand this! Quick -- Fetch me a child of five."