NoJRE means that hyperic agent comes without Java. General agent have JRE standard package. So if you don't have installed Java on your machine where agent should run or even you have, agent will use own Java.
NoJRE agents are been used for physical servers, such as Solaris, AIX, HP-UX. In this case you should use own Java (e.g. for AIX -> IBM Java).
For your second question, you must use 64 bit, you can use the followings:
- hyperic-hqee-agent-noJRE-5.8.4.zip (You must have Java in the machine)
In Linux, the order for which Java to invoke by the agent is HQ_JAVA_HOME, embedded JRE (if any), then JAVA_HOME.
I can't speak to windows. In our environments we have the JAVA_HOME profile variable linked to a symbolic link to a java that gets regularly patched. I further added to this profile to set HQ_JAVA_HOME=JAVA_HOME so that the agent calls the most secure JRE since the agents were installed with the embedded JREs.
I HIGHLY recommend you do not use the embedded JREs especially across a large environment. JREs commonly have security fixes and you can't get rid of the embedded Java without reinstalling the agent. Much easier to keep one system Java and patch that one over time.