when we run any java application,for that application one jvm instance is get created ,this is some one explain me.and i also observed that when i run java application taskmanager shows that one java.exe is running when i run another java application it shows another java.exe in taskmanager(processes) this is on winxp but on another pc of same configuration and same winxp it shows only one java.exe
why this type of behavior for two same machine with same os
and plaese give me answer of my class data sharing(cds) question
You're mistaken about the second PC. Each time you start java.exe, you get a new copy of java.exe, simple as that. java.exe won't run multiple applications in one process.
If I recall, your question about class data sharing had something to do with serial vs. parallel garbage collector. The basic answer is that on a single-processor desktop machine, you're likely to run multiple java.exes, and they would benefit from sharing class data. Since there's only a single processor, parallel GC isn't much of an advantage.
But on a multiprocessor server machine, you're likely to run just one JVM, with mamny webapps in it. That one JVM doesn't need to share class data since there are no other JVMs. But parallel GC is a good thing, as there are multiple processors to run on.