From: invalid@nospicedham.lkntrgzxc.com   
      
   On Thu, 4 Apr 2019 22:35:12 +0100   
   James Harris wrote:   
      
   > Anyone know how portably to test an x86 PC's memory?   
      
   What do you mean by "portably" here? Reliable methods? Multiple   
   generations of processors? Universal software sequence?   
   All-of-the-above?   
      
   Didn't we conclude on a.o.d. that some memory ranges can't be tested due   
   to memory-mapped devices? I.e., need to check E820h or create a memory   
   map first.   
      
   > My first query, therefore, is how to ensure that a read of memory   
   > after issuing WBINVD would get data from RAM rather than anything   
   > which could still be in an external cache and not yet invalidated.   
      
   If the cache has been flushed to RAM, the cache and RAM contents are   
   the same. So, you're asking how to detect if WBINVD is finished? ...   
   If so, I think wolfgang answered that, i.e., he said WBINVD takes   
   "forever" to complete.   
      
   > The second problem is for running on old i386 systems. They do not   
   > have a WBINVD instruction.   
      
   WBINVD is also a privileged instruction.   
      
   > No problem, then? I don't think so,   
   > because IIRC some i386 PCs were made with external caches.   
      
   I've never heard of that.   
      
   The 286/386s did have external FPU's, including the non-Intel Weitek   
   math coprocessor.   
      
      
   Rod Pemberton   
      
   --   
   The lesson for Boeing. You push the nose of a plane down, and planes   
   go down.   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|