Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!cs.utexas.edu!uunet!microsoft!philba From: philba@microsoft.UUCP (Phil Barrett) Newsgroups: comp.sys.ibm.pc Subject: Re: Memory in Compaq 386 Keywords: 80386, page tables, TLB, Virtual 86 Mode. Message-ID: <7619@microsoft.UUCP> Date: 6 Sep 89 03:26:43 GMT References: <1538@draken.nada.kth.se> <6019@pt.cs.cmu.edu> <21803@cup.portal.com> <1989Sep3.175859.5068@esegue.segue.boston.ma.us> Reply-To: philba@microsoft.UUCP (Phil Barrett) Organization: Microsoft Corp., Redmond WA Lines: 24 In article <1989Sep3.175859.5068@esegue.segue.boston.ma.us> johnl@esegue.segue.boston.ma.us (John R. Levine) writes: > >You'd think that in virtual-86 mode segment register loads should be as fast >as they are in real mode, since it is doing none of the descriptor table >manipulation that it has to do in regular virtual mode, but as far as I can >tell from reading the 386 Programmer's Reference, segment loads in virtual >86 mode run at the same speed as in protected mode. I suppose we're >supposed to be grateful to have virtual 86 mode at all. Thats odd, my 386 PRM says that real address mode and virtual 8086 mode are the same in clock counts (2 for reg to seg reg move, 5 for memory to seg reg move). The book also says Protected Virtual Address Mode takes 18 clocks for reg to seg reg and 19 for mem to seg reg move. Note that Prot. Virt Addr mode is NOT V86 mode. This is on page E-2 of the Intel book. Note: I have the book dated 1986, order number 230985.001 which means its the first rev so maybe intel changed the spec. Most likely, the overhead of LIMulators like CEMM, 386Max and QEMM are due to paging being enabled (TLB misses/flushes), i/o overhead and GP fault overhead. Phil `the above opinions are my own' Barrett Microsoft Corp.