It's perfectly normal to have several instances of svchost.exe in a WinXP system because this "services host" acts as a container for many types of system services. Depending on the number of system services running, the number of running svchost.exe and the resulting RAM usage can vary.
One can turn off services that are not needed on a perticular system, and a good guide for that can be found here:
http://www.blackviper.com/WinXP/servicecfg.htm But it is something that one should not rush into without being prepared to spend quite a bit of time on the subject.