From owner-freebsd-questions Thu Nov 16 15: 1: 5 2000 Delivered-To: freebsd-questions@freebsd.org Received: from lennier.cc.vt.edu (lennier.cc.vt.edu [198.82.161.193]) by hub.freebsd.org (Postfix) with ESMTP id B9B3C37B479; Thu, 16 Nov 2000 15:01:01 -0800 (PST) Received: from mail.vt.edu (gkar.cc.vt.edu [198.82.161.190]) by lennier.cc.vt.edu (8.11.0/8.11.0) with ESMTP id eAGN0Qd278389; Thu, 16 Nov 2000 18:00:26 -0500 (EST) Received: from zathras.cc.vt.edu ([198.82.162.117]) by gkar.cc.vt.edu (Sun Internet Mail Server sims.3.5.2000.03.23.18.03.p10) with ESMTP id <0G45003C73WO50@gkar.cc.vt.edu>; Thu, 16 Nov 2000 18:00:24 -0500 (EST) Date: Thu, 16 Nov 2000 17:59:41 -0500 From: flaw Subject: RE: FreeBSD VM To: John Baldwin Cc: freebsd-questions , freebsd-questions , George Reid Message-id: <3A1C57B4@zathras.cc.vt.edu> MIME-version: 1.0 X-Mailer: WebMail (Hydra) SMTP v3.61 Content-type: text/plain; charset=ISO-8859-1 Content-transfer-encoding: 7bit X-WebMail-UserID: flaw X-EXP32-SerialNo: 00002964 Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Maybe due to the amount of memory, the program is still in memory so no page faults are induced. But why cnt.v_vm_faults (cnt is the vmmeter) are incremented much more frequently than p->p_stats->p_ru.ru_majflt? Also, the swapper process with pid 0 (why pid 0?) has ru_majflt the same as cnt.v_vm_faults. Any help and explanation is appreciated. Thanks. Ray, >===== Original Message From John Baldwin ===== >On 16-Nov-00 flaw wrote: >> Thanks for the reply. When exactly is majflt incremented? >> >> I ran ps -o majflt -p on the Netscape process and it gave me a count of >> 291 the first time I ran Netscape after reboot. I killed the process and ran >> Netscape again. This time it gave me a count of 0. > >This is because the pages that Netscape faults in from disk (the text pages) >were still in memory. When a process exits, its pages don't get dumped from >memory right away. Instead, after the pages have sat for a while without being >used they are marked as inactive. When new pages are needed, pages are grabbed >from the inactive pool. If you are really interested in this stuff, I highly >recommend that you get 'The Design and Implementation of 4.4 BSD' (a book). > >> Thanks. >> Ray, >> >>>===== Original Message From George Reid ===== >>>On Thu, 16 Nov 2000, Raymond Law wrote: >>> >>> majflt doesn't increase when a process is generating page faults. Instead, >>> the swapper process (pid 0) gets all the page faults and it is the same as >>> the page faults given by cnt in vmmeter.c. Why is this happening? Is >>> there a way to get the number of page faults generated by a SINGLE process? >>> >>>Yes. >>>ps -o majflt -p >>> >>>The code which increments the number of page faults for a given process is >>>found in /sys/vm/vm_fault.c (circa line >>>856): curproc->p_stats->p_ru.ru_majflt++; >>> >>> The above doesn't get increased. >>> >>>Yes, it does - certainly in 5.0-CURRENT and a quick look at the CVS >>>repository reveals this code has been present for over 6 years. >>> >>>"And then it comes to be that the soothing light >>> at the end of your tunnel was just a freight >>> train, comin' your way." >>> >>> George Reid * greid@ukug.uk.freebsd.org >>> >>> >>> >>>To Unsubscribe: send mail to majordomo@FreeBSD.org >>>with "unsubscribe freebsd-questions" in the body of the message >> >> >> >> To Unsubscribe: send mail to majordomo@FreeBSD.org >> with "unsubscribe freebsd-questions" in the body of the message > >-- > >John Baldwin -- http://www.FreeBSD.org/~jhb/ >PGP Key: http://www.baldwin.cx/~john/pgpkey.asc >"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/ > > >To Unsubscribe: send mail to majordomo@FreeBSD.org >with "unsubscribe freebsd-questions" in the body of the message To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message