Article View: comp.sys.ibm.pc.programmer
Article #143Re: Virtual 8086 on an 80386
From: David Hinds
Date: Fri, 23 Mar 1990 01:02
Date: Fri, 23 Mar 1990 01:02
32 lines
2333 bytes
2333 bytes
In article <BLK.90Mar22132317@vanity.mitre.org>, blk@mitre.org (Brian L. Kahn) writes:
>
> I am interested in running DOS and standard programs on a Virtual DOS
> system using a 386 base. The goal is a sort of augmented and paranoid
> access control over the disk (and maybe network); rather than go into
> that let me say for argument that I want detailed statistics on any
> and all peripherals while running standard programs such as Lotus,
> Word, WordPerfect, dBase, etc. I want to tally all writes to screen
> memory, all disk accesses, any bypass of BIOS such as controller or
> timer reprogramming, and so on.
>
> Can anyone offer insight into such an enterprise? Yes I know that
> performance will suffer, and a drop of 50% is OK! I have read about
> one or two virtual DOS's whose main goal is to switch between
> environs, but I want to stick in a review mechanism between the
> software (DOS + application) and the hardware.
>
It sounds like you would be better off writing your own virtual 86
supervisor. This is easier than it sounds, actually. I have a book on
the 80386 ("80386 Technical Reference", I don't remember the author)
that gives the skeleton of a supervisor for DOS in an appendix. There
isn't much to this - it just sets up all the protected-mode interrupt
handlers to bounce a virtual-mode interrupt back to the appropriate
virtual-mode DOS or BIOS handler. You would need to set up a bunch of
counters, and just add a little bit of code to these handlers to keep
track of each call before passing control on to DOS. You can also trap
I/O instructions in a similar fashion - I don't know if the example
does this, though. The review mechanism should be absolutely, positively
transparent.
-David Hinds
dhinds@popserver.stanford.edu
Technical Details
Message-ID:
<10467@portia.Stanford.EDU>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!purdue!decwrl!shelby!portia!dhindsReferences:
<BLK.90Mar22132317@vanity.mitre.org>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!purdue!decwrl!shelby!portia!dhinds From: dhinds@portia.Stanford.EDU (David Hinds) Newsgroups: comp.sys.ibm.pc.programmer Subject: Re: Virtual 8086 on an 80386 Summary: This isn't all that hard Message-ID: <10467@portia.Stanford.EDU> Date: 23 Mar 90 01:02:48 GMT References: <BLK.90Mar22132317@vanity.mitre.org> Sender: David Hinds <dhinds@portia.stanford.edu> Distribution: na Organization: Stanford University Lines: 32