🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.ibm.pc.programmer
Article #143

Re: Virtual 8086 on an 80386

#143
From: David Hinds
Date: Fri, 23 Mar 1990 01:02
32 lines
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!dhinds
References: <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