Re: Mach VM management question
Re: Mach VM management question
- Subject: Re: Mach VM management question
- From: Pejvan BEIGUI <email@hidden>
- Date: Mon, 29 Jul 2002 21:12:48 +0200
Resent with inline attachment...
>
> Hi guys,
>
>
Thank you, Jim and Justin, for you kind replies
>
> I have a question regarding the VM management in Mach/Darwin.
>
> Since I don't like to reboot my mac, and since I use a lot of different
>
> applications, not at the same time, I'm surprised to see that the VM
>
> storage
>
> on my drives keeps going up, and never fall down.
>
>
>
> I have a tibook 500MHz, with 512MB of RAM, so I don't think that it's
>
> normal
>
> to have so many VM used at the same time on my machine :
>
>
>
>> ...[list of swap files deleted]...
>
>
>
> So, is there a way to tell the system to update the VM ? Or tell him to
>
> remove the unused VM swapfiles ?
>
>
It happens automatically as the space is released. But this is
>
controlled by a user-level daemon process (dynamic_pager). If that
>
got killed off somehow, you would neither free up any unused ones or
>
allocate any new ones. While I've never seen that happen, its
>
something to look for in extremely weird cases.
>
Ok, it's not that, since my VM goes up very easily ;-)
Thanks for the info though :-)
>
> Plus here's the output of my top :
>
>
>
>> [... Top outpout deleted ...]
>
>
>
> So what is this kernel_tasks using 400M VSize ?
>
>
The kernel allocates some virtual address space (space in submaps, not
>
actual memory) for efficient future memory allocation and wiring later
>
on. Top picks that up and reports it. Kernel leaks would most likely
>
cause a rise in wired memory. With 512MB of memory, the 59.6MB of
>
wired memory is not a major concern (some wired data structure counts
>
scale up with amount of physical memory).
>
>
There are uses of true virtual (pageable) memory within the kernel.
>
Specifically, some of the (not currently in-use) texture maps for
>
graphics acceleration are stored in kernel pageable memory. And some
>
(sent, but not-yet-received) Mach IPC data is stored in pagable kernel
>
memory.
>
>
There is no way to distinguish between over-commit virtual address
>
space allocations in the kernel, and true pageable memory allocations
>
using top. So we can't tell how much of that 400MB of kernel virtual
>
falls into each of the two categories above. In fact, it isn't
>
possible to tell that for any other task/process either. Since your
>
maximum "dirty virtual" memory size of ~1GB (7*76MB swap files + 512MB
>
of physical memory) is less than the 1.69GB of all virtual allocations
>
reported by top (even when you remove the 400MB of potentially unused
>
space in the kernel), it may be correct.
>
Thanks for the explanation
>
Your top says there are 55 processes, and you only show 14 of them. Is
>
there anything else of interest in those other 41 processes?
>
below, you'll find the outuput of "top -l -n 60"
Processes: 57 total, 2 running, 55 sleeping... 158 threads
04:43:27
Load Avg: 0.51, 0.51, 0.57 CPU usage: 7.3% user, 17.9% sys, 74.8% idle
SharedLibs: num = 126, resident = 14.8M code, 376K data, 2.20M LinkEdit
MemRegions: num = 9525, resident = 124M + 4.51M private, 42.4M shared
PhysMem: 59.8M wired, 241M active, 205M inactive, 505M used, 6.41M free
VM: 1.95G + 56.4M 264471(0) pageins, 643124(0) pageouts
PID COMMAND %CPU TIME #TH #PRTS #MREGS RPRVT RSHRD RSIZE VSIZE
5979 top 13.0% 0:00.43 1 14 18 420K+ 308K 676K+
1.82M+
73 Window Man 2.9% 4:04:41 3 2744 3426 3.65M 26.3M 29.6M 127M
328 Terminal 2.1% 22:18.23 7 131 881 3.26M 8.25M 8.15M 68.9M
289 java 0.7% 19:00.04 26 205 181 700K 272K 728K 171M
5857 Net Monito 0.7% 5:34.53 3 73 134 1.13M 2.86M 2.18M 58.0M
5957 mldonkey 0.7% 2:00.72 1 16 74 14.1M 984K 15.0M 16.0M
5853 DragThing 0.7% 1:59.85 2 81 279 2.86M 4.27M 4.17M 62.2M
5595 imserviced 0.7% 0:26.04 1 22 35 272K 372K 668K 3.07M
0 kernel_tas 0.0% 1:44:06 26 0 - - - 48.0M+ 400M
5583 Proteus 0.0% 37:48.32 5 145 960 40.9M 6.46M 43.2M 233M
291 loginwindo 0.0% 24:29.78 7 151 183 2.02M 3.11M 2.98M 46.7M
327 SystemUISe 0.0% 16:39.92 4 138 237 1.67M 3.82M 2.30M 60.9M
133 configd 0.0% 14:07.55 4 110 173 364K 376K 576K 4.29M
5584 imservices 0.0% 6:03.19 4 32 678 30.6M 900K 30.8M 151M
2431 Dock 0.0% 4:24.34 3 112 209 1.19M 5.41M 2.50M 56.6M
330 MicrosoftM 0.0% 3:32.92 1 77 37 152K 496K 260K 26.1M
3323 Microsoft 0.0% 2:42.81 2 75 143 2.76M 6.36M 3.30M 58.3M
333 MicrosoftK 0.0% 2:34.48 1 53 50 168K 1.25M 276K 38.7M
5594 imserviced 0.0% 2:21.82 1 22 38 1.72M 816K 2.41M 5.74M
71 ATSServer 0.0% 2:09.11 1 37 78 1.01M 2.80M 2.03M 66.7M
277 openmonito 0.0% 2:00.33 1 9 20 28K 308K 104K 1.64M
75 update 0.0% 1:34.06 1 8 13 12K 268K 44K 1.25M
419 SecurityAg 0.0% 0:54.08 4 124 170 1.67M 4.74M 3.67M 59.6M
447 ntpd 0.0% 0:49.48 1 9 15 68K 384K 192K 1.49M
5875 Finder 0.0% 0:47.09 2 88 294 12.3M 8.54M 14.1M 76.9M
229 coreservic 0.0% 0:34.26 3 62 78 784K 380K 732K 4.75M
4894 nmbd 0.0% 0:31.95 1 16 17 120K 520K 412K 2.08M
248 httpd 0.0% 0:26.47 1 9 73 16K 284K 56K 3.45M
2 mach_init 0.0% 0:26.20 1 117 13 40K 284K 92K 1.27M
78 dynamic_pa 0.0% 0:24.56 1 10 15 32K 272K 60K 1.27M
170 sharityd 0.0% 0:21.89 2 11 25 92K 388K 252K 6.59M
257 SecuritySe 0.0% 0:17.97 2 71 24 556K 536K 348K 3.19M
211 lookupd 0.0% 0:17.21 2 28 21 212K 412K 408K 2.39M
107 autodiskmo 0.0% 0:15.43 2 47 19 108K 364K 196K 2.34M
204 netinfod 0.0% 0:10.07 1 8 18 412K 348K 520K 1.79M
321 pbs 0.0% 0:09.08 1 30 44 116K 416K 100K 22.5M
331 Silk 0.0% 0:08.56 1 57 69 624K 2.42M 840K 49.9M
1976 imserviced 0.0% 0:05.68 1 23 32 0K 816K 328K 4.01M
282 openinfo 0.0% 0:03.30 4 16 28 100K 352K 272K 2.33M
159 syslogd 0.0% 0:03.16 1 8 13 40K 276K 88K 1.26M
41 kextd 0.0% 0:03.02 2 16 338 0K 264K 24K 6.44M
270 oplrqb 0.0% 0:02.18 1 9 16 40K 296K 108K 1.82M
267 cron 0.0% 0:01.97 1 9 15 32K 292K 96K 1.52M
996 System Eve 0.0% 0:01.57 1 58 62 532K 2.43M 756K 48.6M
263 sshd 0.0% 0:01.22 1 9 15 76K 420K 176K 1.56M
318 databackup 0.0% 0:00.38 1 14 26 128K 328K 280K 1.88M
286 sh 0.0% 0:00.01 1 16 13 0K 584K 16K 1.69M
275 openexec 0.0% 0:00.96 4 17 29 200K 324K 344K 3.03M
271 www_sv 0.0% 0:00.02 1 16 17 0K 264K 16K 2.04M
379 automount 0.0% 0:00.20 2 11 18 56K 348K 176K 2.14M
250 httpd 0.0% 0:00.01 1 9 73 0K 284K 40K 3.45M
236 inetd 0.0% 0:00.10 1 9 13 0K 264K 24K 1.26M
182 CrashRepor 0.0% 0:00.16 1 61 16 212K 284K 276K 1.57M
5913 tcsh 0.0% 0:00.23 1 24 16 564K 576K 760K 5.82M
5926 tcsh 0.0% 0:00.31 1 24 16 568K 576K 996K 5.82M
5958 telnet 0.0% 0:00.03 1 13 15 100K 340K 332K 1.46M
1 init 0.0% 0:00.11 1 20 12 24K 288K 52K 1.26M
0 idle_threa 66.7% 90:40:40
All the processes are there. Unfortunately, I had to reboot after saving
this data, since AppleTalk went nuts ;-)
BTW, yes, I have an MS Keyboard, and an MS Mouse, please don't blame me for
that ;-)
Pejvan
_______________________________________________
darwin-kernel mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/darwin-kernel
Do not post admin requests to the list. They will be ignored.