RAM Usage
Mac OS X likes RAM. The official requirement is a minimum of 128MB of RAM. Some people will tell you that you can get by with 64MB if you don't run classic. And, in fact, you can. I'll bet you could even boot OS X with as little as 32MB if you were persistent enough. But merely "booting" is a far cry from "using."
Rule number 541 of computer use: never run any software on the "minimum required system" marked on the box. Yes, OS X's virtual memory infrastructure is very solid, but you can't get blood from a stone. As I write this, I'm running the Finder, iTunes, Terminal, System Preferences, and DragThing, plus IE and BBEdit in the classic environment. Here's a peek at the output of the (Unix) top command:
Processes: 38 total, 4 running, 34 sleeping... 105 threads 15:02:46
Load Avg: 0.53, 0.83, 0.73 CPU usage: 29.7% user, 8.5% sys, 61.9% idle
SharedLibs: num = 81, resident = 16.9M code, 1.20M data, 4.38M LinkEdit
MemRegions: num = 1821, resident = 82.6M + 5.48M private, 31.4M shared
PhysMem: 25.5M wired, 34.8M active, 192M inactive, 253M used, 3.25M free
VM: 1.70G + 41.0M 8068(0) pageins, 0(0) pageouts
PID COMMAND %CPU TIME #TH #PRTS #MREGS RPRVT RSHRD RSIZE VSIZE
271 top 10.1% 0:00.53 1 19 14 176K 224K 400K 1.31M
265 TruBlueEnv 4.2% 2:32.46 15 228 195 50.0M 1.43M 51.0M 1.05G
262 System Pre 0.0% 0:03.08 2 76 66 1.99M 4.83M 5.05M 49.0M
259 iTunes 21.1% 4:15.90 8 165 188 6.30M 6.30M 8.67M 62.1M
246 tcsh 0.0% 0:00.22 1 17 14 252K 452K 692K 5.57M
245 telnet 0.0% 0:00.04 1 17 15 100K 264K 320K 1.43M
236 Terminal 0.0% 0:11.58 6 103 95 2.67M 6.54M 7.32M 53.1M
233 DragThing 0.0% 0:14.74 1 63 116 2.88M 5.33M 4.51M 48.4M
231 Dock 0.0% 0:05.22 3 107 171 3.48M 5.33M 4.73M 48.6M
230 Finder 0.0% 0:24.97 3 92 153 8.91M 14.9M 15.1M 67.8M
229 pbs 0.0% 0:02.43 3 106 64 636K 1.35M 1.95M 15.6M
226 loginwindo 0.0% 0:03.04 2 104 66 1.26M 3.34M 2.93M 45.1M
223 cron 0.0% 0:00.01 1 10 14 84K 220K 132K 1.50M
219 SecuritySe 0.0% 0:00.18 2 24 27 524K 1.01M 1.50M 4.68M
207 automount 0.0% 0:00.03 2 12 18 220K 284K 324K 2.21M
Check out the highlighted section: 253M used, 3.25M free. Physical memory is nearly exhausted on a 256MB system under what would be a pretty light load in Mac OS 9. But note that nothing at all has been paged out at this point, and only 25.5M is "wired" (meaning it cannot be paged out: mostly kernel-related memory). Now I'll launch the following applications: Sherlock, Mail, OmniWeb, Preview, TextEdit, iCab, Network Utility, and Disk Utility, plus Word and Photoshop in classic. Let's see how the picture changes:
Processes: 46 total, 2 running, 44 sleeping... 134 threads 15:20:23
Load Avg: 0.76, 0.74, 0.81 CPU usage: 24.7% user, 20.8% sys, 54.5% idl
SharedLibs: num = 95, resident = 9.61M code, 324K data, 2.00M LinkEdit
MemRegions: num = 2905, resident = 145M + 4.84M private, 33.0M shared
PhysMem: 28.6M wired, 149M active, 74.7M inactive, 253M used, 3.30M free
VM: 2.13G + 45.3M 12003(12003) pageins, 2648(2648) pageouts
PID COMMAND %CPU TIME #TH #PRTS #MREGS RPRVT RSHRD RSIZE VSIZE
300 top 0.0% 0:00.36 1 19 14 184K 196K 404K 1.31M
297 Disk Utili 0.0% 0:01.90 1 109 77 1.79M 3.36M 4.17M 49.3M
296 Network Ut 0.0% 0:02.64 1 65 50 1.32M 2.88M 3.33M 48.4M
295 iCab 0.0% 0:04.29 3 84 88 2.11M 4.93M 6.06M 52.0M
294 Preview 0.0% 0:01.03 1 61 43 872K 1.69M 1.55M 46.6M
292 Mail 0.0% 0:15.58 8 127 132 5.46M 4.56M 8.20M 62.6M
291 TextEdit 0.0% 0:01.18 1 67 46 1.04M 1.74M 1.80M 47.1M
290 Sherlock 0.0% 0:04.46 3 94 69 2.46M 3.05M 4.23M 48.6M
289 .OmniWeb 0.0% 0:09.89 11 120 223 5.32M 4.61M 8.41M 59.3M
265 TruBlueEnv 0.0% 5:05.42 15 254 244 96.1M 1.01M 96.7M 1.06G
262 System Pre 0.0% 0:03.42 2 76 66 1.76M 2.85M 3.37M 49.0M
259 iTunes 0.0% 7:03.99 8 167 194 6.18M 2.73M 6.71M 62.1M
246 tcsh 0.0% 0:00.32 1 17 15 268K 348K 540K 5.59M
245 telnet 0.0% 0:00.04 1 17 15 32K 152K 124K 1.43M
236 Terminal 0.0% 0:16.65 6 129 109 1.86M 4.40M 4.29M 53.9M
The first thing you'll notice is that the amount of free RAM has stayed about the same (a slight increase, actually). Mac OS X is apparently determined to keep a small stash of free RAM. But check out the other highlighted spec: 2648 pageouts. Wired RAM increased slightly, presumably due to increased kernel resource usage by all the newly launched applications.
But the numbers only tell part of the story. While all this is going on, here I am typing away in BBEdit without an apparent slowdown. iTunes hasn't skipped. I can switch to any one of the applications and use it without undue thrashing. But the wall's out there somewhere. Let's find it by launching the rest of the applications...