From commits-return-59764-apmail-harmony-commits-archive=harmony.apache.org@harmony.apache.org Mon Aug 10 11:54:34 2009 Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 73245 invoked from network); 10 Aug 2009 11:54:34 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 10 Aug 2009 11:54:34 -0000 Received: (qmail 39735 invoked by uid 500); 10 Aug 2009 11:54:40 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 39706 invoked by uid 500); 10 Aug 2009 11:54:40 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 39635 invoked by uid 99); 10 Aug 2009 11:54:40 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 10 Aug 2009 11:54:40 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 10 Aug 2009 11:54:36 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 02264234C056 for ; Mon, 10 Aug 2009 04:54:15 -0700 (PDT) Message-ID: <575700444.1249905255007.JavaMail.jira@brutus> Date: Mon, 10 Aug 2009 04:54:15 -0700 (PDT) From: "Daniel Gong (JIRA)" To: commits@harmony.apache.org Subject: [jira] Updated: (HARMONY-6291) Smallest classes set for customer application In-Reply-To: <1744935500.1249456754779.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-6291?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Daniel Gong updated HARMONY-6291: --------------------------------- Attachment: minjretoolkit.zip This zip file is the newest version of MinJre Toolkit. The ant build file can compile and test jvmti agent now. > Smallest classes set for customer application > --------------------------------------------- > > Key: HARMONY-6291 > URL: https://issues.apache.org/jira/browse/HARMONY-6291 > Project: Harmony > Issue Type: New Feature > Components: Misc > Environment: Windows & Linux > Reporter: Daniel Gong > Attachments: minjretoolkit-new.tar.gz, minjretoolkit.tar.gz, minjretoolkit.zip > > > Now the MinJreToolkit is almost complete. It includes functional classes as well as command line tool and ant task implemented based on them. More, for dynamic tracing, a jvmti agent has been implemented. Both static analysis and dynamic tracing produce a type of result file called cns (Class Name Set) file, which has an associated data structure called ClassNameSet that can be created from a cns file, witten to a cns file and merged with a cns file. The cns file in the conf directory contains the required classes for different jre implementations. Now it only supports Harmony. > The toolkit can be used in two steps. First, employ both static analyzer and dynamic tracer in the process of application development and test, and record necessary information in several cns files. Second, employ the jre generator to merge these cns files and generate a new jre from an original one. > So far I have written a simple ant build file to handle the whole process including compile, test, pack & javadoc. The compiling of the agent is not in because I'm still learning ant usage. The test is also very simple, just a helloworld app:P > To compile and use the agent: > windows: cl /EHsc -I %JAVA_HOME%\include\ -I %JAVA_HOME%\include\win32\ -LD ClassLoadTraceAgent.cpp Main.cpp -FeAgent.dll > linux: g++ -I ${JAVA_HOME}/include/ -I ${JAVA_HOME}/include/linux ClassLoadTraceAgent.cpp Main.cpp -fPIC -shared -o libagent.so > usage: java -agentlib:Agent=[the path of the result cns file] [main class] > I'll improve the toolkit by adding command line script, optimizing ant build, doing more test and improve the algorithm if a better strategy is found. > Everyone please feel free to give me advice or report bugs to me:) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.