This is an old revision of the document!
JP2 is a Java Profiler developed by Binder et al. 1). It can be used to count the executed bytecode number to estimate the CPU consumption of a Java program. To do that, we need to modify the command executing the Java program like this:
java -Xmx2g \ -javaagent:$JP2_HOME/lib/javaagent.jar \ -Xbootclasspath/p:$JP2_HOME/lib/Thread_JP2.jar:$JP2_HOME/lib/asm-all-3.3.jar:$JP2_HOME/lib/jp2.jar \ -Dch.usi.dag.jp2.Output="program.output.gz" \ -Dch.usi.dag.jp2.InstrumentedClasses="ProgramInstrumented" \ -Dch.usi.dag.jp2.UninstrumentedClasses="ProgramUninstrumented" \ -cp YourClasspath YourMainClass
Felix is an Apache implementation of the OSGi specifications which define a dynamic service deployment framework 2). The basic idea of OSGi is providing a framework on which the service implementations or bundles are plugged. The framework handles the service requests and responses. Each bundle communicates only with the framework. SIP communications is a Java VoIP and instant messaging client using Felix.
While using JP2 to count the executed bytecode number of SIP communicator, we met