Wednesday, April 22, 2009

When does a laptop need more ram?

Answer, when the commit charge is double the size of physical memory. And the disk activity light comes on steady and the machine slows to a crawl.
Windows uses an old operating system trick, when it runs of out memory to run programs, it swaps stuff in memory out to hard disk and loads whatever it was that wanted into memory. This allows Windows to run modern bloatware on small memory computers. When the bloatware is too fat to fit into memory, Windows just loads the part immediately needed, and swaps in other parts when necessary.
This works after a fashion, but when over done it leads to thrashing. Windows swaps in something new and throws something else out of memory. Then the part just tossed is needed so Windows loads it back over something that is needed next and so on. Progress drops close to zero and disk activity goes berserk.
Laptop had been hapily running MS Office, Firefox, Thunderbird, and WinXP all in 256 Megabytes of RAM. Then I asked Kodak Easyshare to print a single picture on the inkjet. Hoo boy. Machine locks up, disk activity LED comes on solid. Minutes pass. I wait and eventually the print emerges from the inkjet. Many minutes.
I look in Task Manager (Ctl-Alt-Delete). Physical Memory 256 Meg. Peak Commit Charge 556 Meg. Uh oh. Commit charge is Microsoft jargon for all the physical memory in use plus all the stuff waiting in the swap file to get into physical memory. Easyshare is so plump that it requires twice as much memory as the poor old laptop has.
Hmm. Maybe 256 Megs of Ram is a little chintzy these days. Open up the bottom of the laptop and find just one memory stick, a 256 Meg stick, plus an empty RAM socket. All I gotta do is buy another stick of memory and double my RAM. Some time later at Staples, they don't have 256 Meg memory sticks anymore, they are obsolete. But $30 gets a 512 Meg stick that fits, and the laptop boots up with 256 + 512 = 768 Meg. Cool.
When I started in this business 128K (K not Meg) of Ram on a PDP-11 was enough to run a seven user timeshare system. Now I need 768 Meg just to print a picture.

No comments: