delorie.com/archives/browse.cgi | search |
Xref: | news-dnh.mv.net comp.os.msdos.djgpp:2137 |
Path: | news-dnh.mv.net!mv!news.sprintlink.net!in2.uu.net!comp.vuw.ac.nz!mu.sans.vuw.ac.nz!empty |
From: | empty AT sans DOT vuw DOT ac DOT nz (Malcolm Taylor) |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Re: DPMI question |
Date: | 22 Sep 1995 01:04:17 GMT |
Organization: | SANS, Student Access Network System |
Lines: | 23 |
References: | <DEt18B DOT HsB AT jade DOT mv DOT net> <4355ve$hj2 AT news DOT mountain DOT net> <43kpn0$1ji AT magus DOT cs DOT utah DOT edu> <811525224snz AT chocolat DOT demon DOT co DOT uk> |
Nntp-Posting-Host: | mu.sans.vuw.ac.nz |
To: | djgpp AT sun DOT soe DOT clarkson DOT edu |
Dj-Gateway: | from newsgroup comp.os.msdos.djgpp |
Paul Shirley (PS AT chocolat DOT demon DOT co DOT uk) wrote: : larsen AT sunset DOT cs DOT utah DOT edu "Steve Larsen" writes: : I thought the CPU caches the segment descriptor? If so it would attempt : to load invalid values during the selector load op. All a segment register does is point to an entry in the GDT, IDT or LDT (hence the name selector as it selects an entry). The CPU has a cache of these entries to make execution faster. Without this cache the processor would spend all it's time referencing the tables, instead of executing the code. Loading a selector with a value will cause the processor to lookup the descriptor in the appropriate table. Loading an inappropriate value will cause a fault for looking further along the table than actually exists. My advice in this area is to leav deling with the creation of selectors, descriptors etc. to the DPMI provider. The DPMI server is guaranteed to give a valid value to you. Hope this helps Malcolm : -- : Paul Shirley: too lazy to change this sig.
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |