🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.intel
Article #465

Re: 386 <-> 486 incompatibilities

#465
From: Drew Eckhardt
Date: Thu, 13 Aug 1992 23:23
38 lines
2074 bytes
In article <16ds34INNpvn@fbi-news.Informatik.Uni-Dortmund.DE> eggenste@cantor.informatik.uni-dortmund.de (Heinz-Bernd Eggenstein) writes:
>Hello!
>
>Among the few MS-DOS programs that will run on a 80386, but not on
>an i486 based machine, there's a program called "PC Scheme"
>by Texas Instruments (Scheme is a Lisp-like language). 
>
>According to rumors, this is a result of the program changing 
>some instructions in its own code-segment at runtime. 

>-How can this cause incompatibilities between 
> 80386 and i486 processors?

The i386 has a 12 byte prefetch, the i486 a larger (32 byte? Intel 
Gurus, please provide a correct value if it's not 32 bytes).  If the 
i486 changes something that has already been prefetched, 
it changes the copy in the cache, but not the prefetch, and 
the old instruction gets executed.

>-I don't think every  self-modification of a program will
> cause problems. Exactly under what conditions may 
> problems occur? 

When the modified code falls within the prefetch.

>-Is there a way to detect this kind of self-modification
> either at runtime (say, with a small TSR debugger-like program) or 
> scanning the assembly-code sources.

Scanning the assembly code should do it.

>-Are there any other mayor causes for i486 incompatibilities?

No.

-- 
Microsoft is responsible for propogating the evils it calls DOS and Windows, 
IBM for AIX (appropriately called Aches by those having to administer it), but neither is as bad as AT&T.  Boycott AT&T, and let them know how you feel. 
Technical Details
Message-ID: <1992Aug13.232325.930@colorado.edu>
Path: arc1-ca.pugleaf.net!sparky!uunet!boulder!ophelia!drew
References: <16ds34INNpvn@fbi-news.Informatik.Uni-Dortmund.DE>

Show Full Headers
Complete Article Headers
Newsgroups: comp.sys.intel
Path: arc1-ca.pugleaf.net!sparky!uunet!boulder!ophelia!drew
From: drew@ophelia.cs.colorado.edu (Drew Eckhardt)
Subject: Re: 386 <-> 486 incompatibilities
Message-ID: <1992Aug13.232325.930@colorado.edu>
Keywords: 80386, i486, self-modifying code
Sender: news@colorado.edu (The Daily Planet)
Nntp-Posting-Host: ophelia.cs.colorado.edu
Organization: University of Colorado at Boulder
References: <16ds34INNpvn@fbi-news.Informatik.Uni-Dortmund.DE>
Date: Thu, 13 Aug 1992 23:23:25 GMT
Lines: 39