home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   alt.os.development      Operating system development chatter      4,255 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 3,079 of 4,255   
   James Harris to Scott Lurndal   
   Re: The EA jump immediately after enabli   
   14 Feb 22 16:23:01   
   
   From: james.harris.1@gmail.com   
      
   On 13/02/2022 17:17, Scott Lurndal wrote:   
   > James Harris  writes:   
   >> On 10/02/2022 22:33, wolfgang kern wrote:   
      
   ...   
      
   >>> 1. this EB 00 after write CR0 were never required, at least not by me.   
   >>   
   >>  From what I've found recently it looks as though it would be rare for   
   >> anyone to need that jump. (Though it or something like it is still right   
   >> to include to cover the unusual cases.)   
      
   ...   
      
   > I suspect that this behavior varies based on the processor generation.   
      
   Yes, if you are talking about the length of the decode queue then I   
   agree. It will depend on the specific processor and it's   
   non-architectural so cannot be predetermined.   
      
   ...   
      
   > This meant that there is a 'depth-of-decode-queue' window between   
   > decoding and executing an instruction;  for those instructions whose   
   > decode stage involved knowledge of the PM flag but were decoded   
   > before the instruction to set the flag was executed, they'll be   
   > executing in an indeterminate state (unless the programmer knows   
   > the absolute depth of the queue under all circumstances, the   
   > programmer cannot make any assumptions about the environment of   
   > any instructions between setting the PM flag and loading the CS   
   > register via a jump instruction.   
      
   Yes, it's possible that all instructions would decode under the wrong   
   assumptions in certain processors; one would have to run tests to find   
   out for sure. But it's interesting that PM16 uses the /same/ instruction   
   encodings and addressing limitations as RM, and that the main semantic   
   differences are in the interpretation of loading segment registers.   
      
      
   --   
   James Harris   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca