|
From: Marek P. <ma...@us...> - 2001-08-25 10:14:23
|
Update of /cvsroot/javaprofiler/library
In directory usw-pr-cvs1:/tmp/cvs-serv525
Modified Files:
README config.mk
Log Message:
Index: README
===================================================================
RCS file: /cvsroot/javaprofiler/library/README,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -r1.18 -r1.19
*** README 2001/08/23 23:57:30 1.18
--- README 2001/08/25 10:14:19 1.19
***************
*** 36,43 ****
1.1 Operating system
! The library is tested for use on the following operating systems; the main reason
! is that for these OSes good Java Virtual Machines exist (meaning with functional
! Java Virtual Machine Profiler Interface - JVMPI or at least JVMPI functions used
! in library's sources are supported).
* Microsoft Windows NT4/2000
--- 36,44 ----
1.1 Operating system
! The library is tested for use on the following operating systems;
! the main reason is that for these OSes good Java Virtual Machines
! exist (meaning with functional Java Virtual Machine Profiler
! Interface - JVMPI or at least JVMPI functions used in library's
! sources are supported).
* Microsoft Windows NT4/2000
***************
*** 47,55 ****
1.2 Programming language
! The library sources are written in C++.
! On Win32 platform, Microsoft Visual C/C++ or Borland C/C++ 5.5.1 can be used.
! On Unix platforms (in this time, Solaris only) GNU C/C++ 3.0 _MUST_ be used.
! Genuine Sun Workshop Compilers had problems with creating the dynamic library
! under SunOS. So had the elder versions of GNU C/C++.
* Visual C/C++ 6.0
--- 48,57 ----
1.2 Programming language
! The library sources are written in plain C++. On Win32 platform,
! Microsoft Visual C/C++ or Borland C/C++ 5.5.1 can be used.
! On Unix platforms (in this time, Solaris only) GNU C/C++ 3.0 _MUST_
! be used. Genuine Sun Workshop Compilers had problems with creating
! the dynamic library under SunOS. So had the elder versions
! of GNU C/C++.
* Visual C/C++ 6.0
***************
*** 57,63 ****
* GNU C/C++ 3.0
! Client part of communication interface for accessing data of profiled JVM
! (gained and stored inside the structures of the library) is written in Java.
! Because of stability and standard Sun's JVM is used.
* JDK 1.3.1
--- 59,65 ----
* GNU C/C++ 3.0
! Client part of communication interface for accessing data of profiled
! JVM (gained and stored inside the structures of the library) is
! written in Java. Because of stability and standard Sun's JVM is used.
* JDK 1.3.1
***************
*** 67,84 ****
These tools are not necessary for building of profiler dynamic library.
! Project documentation is written directly to the sources. So all classes,
! methods and class members are well-documented. For creating of project
! documentation in HTML (or PDF) format, DOC++ (for C++ sources) and JavaDoc
! (for Java sources) are used.
* DOC++ 3.4.7
! Data flows, schemes and relations between structures are described using
! Microsoft Visio 2000. These schemes are exported to JPEG format, too.
* Microsoft Visio 2000
GNU C/C++ must be used together with GNU make 3.7x. Another versions
! of "make" utility can be incompatible with GNU make 3.7x.
* GNU make 3.7x
--- 69,88 ----
These tools are not necessary for building of profiler dynamic library.
! Project documentation is written directly to the sources. So all
! classes, methods and class members are well-documented. For creating
! of project documentation in HTML (or PDF) format, DOC++ (for C++
! sources) and JavaDoc (for Java sources) are used.
* DOC++ 3.4.7
! Data flows, schemes and relations between structures are described
! using Microsoft Visio 2000. These schemes are exported to JPEG format
! for those who do not have this software.
* Microsoft Visio 2000
GNU C/C++ must be used together with GNU make 3.7x. Another versions
! (of other vendors) of "make" utility can be incompatible
! with GNU make 3.7x.
* GNU make 3.7x
***************
*** 87,124 ****
2. DIRECTORY STRUCTURE
! config/ configuration files for various platforms/compilers
! doc/ documentation (most of it is generated during compilation)
! doc/html/interface/ project documentation to the sources
! of Java interface to the library
! doc/html/library/ project documentation to the sources
! of the profiler dynamic library
! doc/html/native/ project documentation to the sources
! of native Java classes of the interface
! doc/visio/ data flows, schemes and relations between
! structures inside of profiler dynamic library
! doc/visio/jpegs/ Visio files exported to JPEG format
! src/ C++ sources of profiler dynamic library
! src2/ Java sources of the low-level interface to this library
3. UNSUPPORTED PLATFORMS
! Sun's JDK for Linux is under high development and JVMPI part is a bit unstable,
! some features are not implemented or have strange behavior. The sources can be
! compiled with no problems under Linux but we do not guarantee the functionality.
- Sources should compile on Sun's SunOS 5.7, too. You can use the same configuration
- file as for SunOS 5.8. It doesn't matter if SPARC or x86 platform.
-
4. DOWNLOAD
--- 91,130 ----
2. DIRECTORY STRUCTURE
! config/ configuration files for various platforms/compilers
! doc/ documentation (most of it is generated during compilation)
! doc/html/interface/ project documentation to the sources
! of Java interface to the library
! doc/html/library/ project documentation to the sources
! of the profiler dynamic library
! doc/html/native/ project documentation to the sources
! of native Java classes of the interface
! doc/visio/ data flows, schemes and relations between
! structures inside of profiler dynamic library
! doc/visio/jpegs/ Visio files exported to JPEG format
! src/ C++ sources of profiler dynamic library
! src2/ Java sources of the low-level interface to this library
3. UNSUPPORTED PLATFORMS
! Sun's JDK for Linux is under high development and JVMPI part is a bit
! unstable, some features are not implemented or have strange behaviour.
! The sources can be compiled with no problems under Linux but we do not
! guarantee the functionality.
!
! Sources should compile on Sun's SunOS 5.7, too. You can use the same
! configuration file as for SunOS 5.8. It doesn't matter if SPARC or x86
! platform.
4. DOWNLOAD
***************
*** 144,168 ****
5.1 Win32 platform
! 5.1.1 replace "config.mk" file by appropriate one from config/ subdirectory
copy appropriate configuration file from config/ subdirectory
(depending on your own system configuration and used compiler)
! to the top directory of these sources and rename it to "config.mk"
! (so, you replace original file)
5.1.2 modify new "config.mk" - paths etc.
! 5.1.3 run "nmake" (for Visual C/C++ 6.0) or other equivalent (eg. "make")
compile sources by "nmake /f Makefile.mak" (for Visual C/C++)
! or "make -f Makefile.mak" (for Borland C/C++) from top directory
5.1.4 if successful, following files were created:
! src/profiler/profiler.dll profiler dynamic library
! src2/IProf.jar Java interface to dynamic library
! src2/CommunShMem.dll Java native class
! doc/html/ project documentation in HTML format
--- 150,178 ----
5.1 Win32 platform
! 5.1.1 replace "config.mk" file by appropriate one
! from config/ subdirectory
copy appropriate configuration file from config/ subdirectory
(depending on your own system configuration and used compiler)
! to the top directory of these sources and rename it
! to "config.mk" (so, you replace original file)
5.1.2 modify new "config.mk" - paths etc.
! 5.1.3 run "nmake" (for Visual C/C++ 6.0) or other equivalent
! (eg. "make")
compile sources by "nmake /f Makefile.mak" (for Visual C/C++)
! or "make -f Makefile.mak" (for Borland C/C++)
! from top directory
5.1.4 if successful, following files were created:
+
+ src\profiler\profiler.dll profiler dynamic library
! src2\IProf.jar Java interface to dynamic library
! src2\CommunShMem.dll Java native class
! doc\html\ project documentation in HTML format
***************
*** 174,181 ****
5.2.3 run "make" from top directory (as usual)
! 5.2.4 same as 5.1.4
5.3 Make rules
--- 184,199 ----
5.2.3 run "make" from top directory (as usual)
+
+ 5.2.4 if successful, following files were created:
+ (same as 5.1.4)
! src/profiler/libprofiler.so
+ src2/IProf.jar
+ src2/libCommunShMem.so
+ doc/html/
+
+
5.3 Make rules
***************
*** 240,324 ****
6.2 Profiler dynamic library command-line arguments
! Profiler dynamic library can be set-up thru following command-line arguments:
$ java -Xrunprofiler:arg1=val1,arg2=val2,... <Java program>
! Argument Value Description
! ----------------------------------------------------------------------------------
! alloc {on|off} turns memory profiling on/off
! default: on
!
! alloc_level {object|method|trace} memory profiling granularity level
! default: trace
!
! object ... low
! method ... medium
! trace ... high
!
! alloc_trace_depth [positive number] maximum number of frames in a trace;
! used when alloc_level=trace
! default: 2
!
! alloc_thread {on|off} memory profiling data distinguished
! to Java threads
! default: on
!
! cpu {on|off} turn cpu profiling on/off
! default: on
!
! cpu_method {exact|sampling} cpu profiling method
! default: sampling
!
! exact ... slower
! sampling ... faster
!
! cpu_level {method|trace} cpu profiling granularity level
! default: trace
!
! method ... low
! trace ... high
!
! cpu_trace_depth [positive number] maximum number of frames in a trace;
! used when cpu_level=trace
! default: 2
!
! cpu_thread {on|off} cpu profiling data distinguished
! to Java threads
! default: on
!
! commun_type {socket|shmem} type of communication (media)
! default: shmem
!
! socket ... TCP sockets
! shmem ... shared memory
!
! commun_host [host] hostname of opposite side;
! used when commun_type=socket
! and connect_mode=client
! default: 127.0.0.1 (localhost)
!
! commun_port [positive number] port where the library is listening
! for incoming requests;
! used when commun_type=socket
! and connect_mode=server
! default: 25595
!
! commun_shmem_id [string 3 chars long] unique identifier of shared memory
! block; it can be only 3 characters
! long, not more !
! default: com
!
! commun_shmem_size [positive number] shared memory block size (in bytes)
! default: 262144
! connect_mode {server|client} library's role in communication;
! used when commun_type=socket
! default: server
7. AUTHORS
! * Marek Przeczek * Petr Luner
ma...@us... lu...@us...
--- 258,350 ----
6.2 Profiler dynamic library command-line arguments
! Profiler dynamic library can be set-up thru following
! command-line arguments:
$ java -Xrunprofiler:arg1=val1,arg2=val2,... <Java program>
! Argument Value Description
! --------------------------------------------------------------------
! alloc {on|off} turns memory profiling on/off
! default: on
! alloc_level {object|method|trace} memory profiling
! granularity level
! default: trace
!
! object ... low (fast)
! method ... medium (slow)
! trace ... high (slowest)
!
! alloc_trace_depth [positive number] maximum number of frames
! in a trace;
! used when alloc_level=trace
! default: 2
!
! alloc_thread {on|off} memory profiling data
! distinguished to Java threads
! default: on
!
! cpu {on|off} turn cpu profiling on/off
! default: on
!
! cpu_method {exact|sampling} cpu profiling method
! default: sampling
!
! exact ... slow (better)
! sampling ... fast (worse)
!
! cpu_level {method|trace} cpu profiling
! granularity level
! default: trace
!
! method ... low (fast)
! trace ... high (slow)
!
! cpu_trace_depth [positive number] maximum number of frames
! in a trace;
! used when cpu_level=trace
! default: 2
!
! cpu_thread {on|off} cpu profiling data
! distinguished to Java threads
! default: on
!
! commun_type {socket|shmem} type of communication (media)
! default: shmem
!
! socket ... TCP sockets
! shmem ... shared memory
!
! commun_host [host] hostname of opposite side;
! used when commun_type=socket
! and connect_mode=client
! default: 127.0.0.1
!
! commun_port [positive number] port where the library
! is listening for incoming
! requests;
! used when commun_type=socket
! and connect_mode=server
! default: 25595
!
! commun_shmem_id [string 3 chars long] unique identifier of shared
! memory block; it can be only
! 3 characters long, not more !
! default: com
!
! commun_shmem_size [positive number] shared memory block size
! (in bytes)
! default: 262144
!
! connect_mode {server|client} library's role
! in communication;
! used when commun_type=socket
! default: server
7. AUTHORS
! * Marek Przeczek, 2001 * Petr Luner, 2001
ma...@us... lu...@us...
Index: config.mk
===================================================================
RCS file: /cvsroot/javaprofiler/library/config.mk,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -r1.17 -r1.18
*** config.mk 2001/08/23 23:57:30 1.17
--- config.mk 2001/08/25 10:14:19 1.18
***************
*** 1,12 ****
################################################################
# configuration file
! # Microsoft Windows NT 4.0/2000, x86, Visual C/C++ 6.0
#
# author: Marek Przeczek
! PROF_LIBRARY_NAME = profiler\profiler.dll
PROF_JAVA_INTERF_PACKAGE = IProf.jar
! NATIVE_LIBRARY_NAME = CommunShMem.dll
################################################################
--- 1,12 ----
################################################################
# configuration file
! # SunOS 5.8, SPARC, GNU C/C++ 3.0 (using GNU make 3.7x)
#
# author: Marek Przeczek
! PROF_LIBRARY_NAME = profiler/libprofiler.so
PROF_JAVA_INTERF_PACKAGE = IProf.jar
! NATIVE_LIBRARY_NAME = libCommunShMem.so
################################################################
***************
*** 15,29 ****
# do not use "\" as a last character in path definition
! COMPILER_PATH = C:\Program Files\Microsoft Visual Studio\VC98
! JAVA_PATH = C:\jdk1.3.1
! DOCPP_PATH = C:\Local\doc++
!
! CCC = "$(COMPILER_PATH)\Bin\cl"
! LD = "$(COMPILER_PATH)\Bin\link"
! JAVAC = "$(JAVA_PATH)\bin\javac"
! JAVAH = "$(JAVA_PATH)\bin\javah"
! JAR = "$(JAVA_PATH)\bin\jar"
! JDOC = "$(JAVA_PATH)\bin\javadoc"
! DOCPP = "$(DOCPP_PATH)\docxx"
################################################################
--- 15,29 ----
# do not use "\" as a last character in path definition
! COMPILER_PATH = /home/mprz7483/BIG/gcc-3.0
! JAVA_PATH = /home/mprz7483/BIG/j2sdk1_3_1
! DOCPP_PATH = /home/mprz7483/BIG/doc++-3.4.7
!
! CCC = "$(COMPILER_PATH)/bin/g++"
! LD = "$(COMPILER_PATH)/bin/g++"
! JAVAC = "$(JAVA_PATH)/bin/javac"
! JAVAH = "$(JAVA_PATH)/bin/javah"
! JAR = "$(JAVA_PATH)/bin/jar"
! JDOC = "$(JAVA_PATH)/bin/javadoc"
! DOCPP = "$(DOCPP_PATH)/docxx"
################################################################
***************
*** 38,71 ****
# modify as needed
! DEFINES = /DWIN32
! INCLUDES = /I "$(JAVA_PATH)\include" /I "$(JAVA_PATH)\include\win32"
# debug or not ?
# choose one of following two possibilities
! FLAGS = /Od /Zi /D_DEBUG /MDd /LDd
! #FLAGS = /O2 /Og /Oi /Ot /Ox /DNDEBUG /MD /LD /G6 /GD
! LDFLAGS = /NOLOGO /DLL /OUT:$(PROF_LIBRARY_NAME)
! LDLIBS = wsock32.lib winmm.lib
! LDFLAGS2 = /NOLOGO /DLL /OUT:$(NATIVE_LIBRARY_NAME)
! LDLIBS2 = wsock32.lib
! CPPFLAGS = /nologo /c $(FLAGS) $(DEFINES) $(INCLUDES)
################################################################
# MAKEFILE
! MFLAGS = /NOLOGO /f Makefile.mak
include dir.info
! all:
! for %i in (xxx $(DIRS)) do if not %%i == xxx $(MAKE) $(MFLAGS) %%i.dir
! for %i in (xxx $(FILES)) do if not %%i == xxx $(MAKE) $(MFLAGS) %%i.obj
!
! clean:
! for %i in (xxx $(CLEAN_FILES)) do if exist %%i del %%i
! for %i in (xxx $(DIRS)) do if not %%i == xxx $(MAKE) $(MFLAGS) %%i.clean
--- 38,68 ----
# modify as needed
! DEFINES = -DSUNOS -fpic -D_REENTRANT
! INCLUDES = -I$(JAVA_PATH)/include -I$(JAVA_PATH)/include/solaris
# debug or not ?
# choose one of following two possibilities
! FLAGS = -O0 -D_DEBUG
! #FLAGS = -O3 -DNDEBUG -fno-rtti -fno-exceptions
! LDFLAGS = $(DEFINES) -shared -o $(PROF_LIBRARY_NAME)
! LDLIBS = -lsocket -lpthread -lthread -lnsl
! LDFLAGS2 = $(DEFINES) -shared -o $(NATIVE_LIBRARY_NAME)
! LDLIBS2 = -lsocket
! CPPFLAGS = -c $(FLAGS) $(DEFINES) $(INCLUDES)
################################################################
# MAKEFILE
! MFLAGS = -f Makefile -C
include dir.info
! all: $(addsuffix .dir.2, $(DIRS)) $(addsuffix .o, $(FILES))
!
! clean: $(addsuffix .clean.2, $(DIRS))
! rm -Rf $(CLEAN_FILES)
|