20 images literally on the screen at once -- This is puzzling, is there any way to do them sequentially?
The rule of thumb is you need about 768 for OSX and Photoshop code. Photoshop needs enough RAM for 3 to 5 x the size of each image - 5 x 20 x 4 Mb = 400 Mb, more for each additional layer, and more when you do operations like rotating.
Once you start rotating or layering, its possible youre going to have slowdowns even at 2 Gb RAM unless you strip the OSX environment down to the bone, or find a way to open fewer images at once.
The other problem is that you're going to force Photoshop and OSX to do a lot of swapping on and off the hard drive. This type of intense work is one of the few times it might make sense to install a 7200 RPM laptop drive, and.or a fast external Firewire drive to separate your data disk from your scratch disk. If it is a G4 PB with a PCMCIA socket, you might even consider a SATA Cardbus interface and an external SATA enclosure, to dodge around the Firewire bottleneck. All depends on dollars.
http://www.macworld.com/2006/02/secrets/marchdigitalphoto/index.php
http://www.shutterbug.net/techniques/digital_darkroom/0406faster/
http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=322829
Here is more up to date infor from Adobe on PS CS2
http://www.adobe.com/cfusion/knowledgebase/index.cfm?id=320005
"With changes in Photoshop and its memory management, the formula used in the past (that is, 3-5 times the size of your average image) no longer provides an accurate estimate of how much scratch disk Photoshop needs. In Photoshop CS2, you can use the states in your history palette to help you determine how much scratch disk space you need.
Each history state that includes an operation that affects the entire image (for example, when you apply Gaussian blur or unsharp mask to the entire image) creates a full copy of your image at its original size. If your initial image is 500 KB, and you apply Gaussian blur to it, your image will need 1 MB of scratch space. If your history states consist of operations that affect only part of the image, such as paint strokes, only the size of the tiles touched by the strokes are added to the image size. If you count up the number of histories you have where operations have affected the entire image, and multiply your original image size by that number, you'll have an approximate amount of scratch disk space the image will need. If you have applied levels, a reduce noise filter, and an unsharp mask filter to your entire image that's 5 MB in size, the image will need 20 MB of scratch space. "