TIP: Click on subject to list as thread! ANSI
echo: nthelp
to: Gregg N
from: Rich
date: 2005-06-25 09:33:38
subject: Re: Page faults

From: "Rich" 

This is a multi-part message in MIME format.

------=_NextPart_000_0079_01C57968.F7BC9C60
Content-Type: text/plain;
        charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

   The term working set is often used to identify the set of pages =
marked as present in a process' page tables.  Over time pages that are =
not used are trimmed so if there is memory pressure over time the =
process' working set would approach the theoretical working set.

   An example of a page in memory but not in the process working set =
could be a code page from a DLL that is in the working set of another =
process but hasn't been touched in this one yet.  It could be a page = that
was prefetched because earlier analysis has shown that it will be = used.

Rich

  "Gregg N"  wrote in message =
news:42bd1c1e$1{at}w3.nls.net...
  Rich wrote:
  >    There is a different between soft faults and hard faults.  A soft =

  > fault is what a page is not in the working set of the process and =
while=20
  > a page fault occurs the action to resolve the fault is to find the=20
  > already loaded page in memory and to add it to the process working =
set. =20
  > Soft faults are relatively cheap.  Another form of fault you might =
be=20
  > seeing are with demand zero pages.  This is a page you have =
allocated=20
  > but not yet touched.  One first reference a physical page is =
allocated=20
  > and zero filled.  Finally, one form of hard fault you could be =
taking is=20
  > with a non-private page such as a page (code or data) from an =
executable=20
  > or a mapped file page that is not modified so gets loaded from and=20
  > reloaded from the executable or mapped file.  I haven't looked so =
this=20
  > may not help but it may be that perfmon distinguishes between the=20
  > variations of page fault and you can see which is which.

  Thanks for the explanation. I've always understood "working set" to be =
a=20
  theoretical notion having more to do with caching than with paging. =
For=20
  Windows, is this an actual table of some sort? What would cause a page =

  to be in memory but not in this table?

  Gregg
------=_NextPart_000_0079_01C57968.F7BC9C60
Content-Type: text/html;
        charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable








   The term
working set is =
often used to=20
identify the set of pages marked as present in a process' page = tables. =20
Over time pages that are not used are trimmed so if there is memory = pressure=20
over time the process' working set would approach the theoretical = working=20
set.
 
   An
example of a page in =
memory but not=20
in the process working set could be a code page from a DLL that is in = the=20
working set of another process but hasn't been touched in this one =
yet.  It=20
could be a page that was prefetched because earlier analysis has shown = that it=20
will be used.
 
Rich
 

  "Gregg N" <invalid{at}invalid.invalid>">mailto:invalid{at}invalid.invalid">invalid{at}invalid.invalid>
= wrote in=20
  message news:42bd1c1e$1{at}w3.nls.net...Rich=20
  wrote:>    There is a
different between soft =
faults and=20
  hard faults.  A soft > fault is what a page is
not in the =
working=20
  set of the process and while > a page fault occurs the action =
to=20
  resolve the fault is to find the > already loaded page in =
memory and to=20
  add it to the process working set.  > Soft faults are =
relatively=20
  cheap.  Another form of fault you might be > seeing are =
with=20
  demand zero pages.  This is a page you have allocated > =
but not=20
  yet touched.  One first reference a physical page is allocated =
>=20
  and zero filled.  Finally, one form of hard fault you could be =
taking is=20
  > with a non-private page such as a page (code or data) from an =

  executable > or a mapped file page that is not modified so gets =
loaded=20
  from and > reloaded from the executable or mapped
file.  I =
haven't=20
  looked so this > may not help but it may be that perfmon =
distinguishes=20
  between the > variations of page fault and you can see which is =

  which.Thanks for the explanation. I've always understood =
"working set"=20
  to be a theoretical notion having more to do with caching than =
with=20
  paging. For Windows, is this an actual table of some sort? What =
would=20
  cause a page to be in memory but not in this=20
table?Gregg

------=_NextPart_000_0079_01C57968.F7BC9C60--

--- BBBS/NT v4.01 Flag-5
* Origin: Barktopia BBS Site http://HarborWebs.com:8081 (1:379/45)
SEEN-BY: 633/267 270 5030/786
@PATH: 379/45 1 106/2000 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.