If you look, one of the kjs windows will have the message 'ENGINE-READY: 10821', which refers to a port. When you check the admin tool (ksvradmin), you'll see that 10821 is in use by the CXS process. This is the process that runs the EJBs, so it's understandable that it needs a kjs (read: JVM) container to run the
java in for local EJBs. I think the CXS just controls where to lookup and RMI the
EJB requests to, but that's just a guess.
I've also noticed the extra kas process. It only seems to be actively using 1MB, so I never worried about. I think it might have something to do with clustering, but I'm not sure. You're right, the Solaris version seems to behave much better.
Hope this helps.