Return-Path: Delivered-To: apmail-harmony-dev-archive@www.apache.org Received: (qmail 34566 invoked from network); 4 Mar 2008 13:51:08 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 4 Mar 2008 13:51:08 -0000 Received: (qmail 54249 invoked by uid 500); 4 Mar 2008 13:51:01 -0000 Delivered-To: apmail-harmony-dev-archive@harmony.apache.org Received: (qmail 54224 invoked by uid 500); 4 Mar 2008 13:51:01 -0000 Mailing-List: contact dev-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 dev@harmony.apache.org Received: (qmail 54215 invoked by uid 99); 4 Mar 2008 13:51:01 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 Mar 2008 05:51:01 -0800 X-ASF-Spam-Status: No, hits=2.6 required=10.0 tests=RCVD_NUMERIC_HELO,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of gcjhd-harmony-dev@m.gmane.org designates 80.91.229.2 as permitted sender) Received: from [80.91.229.2] (HELO ciao.gmane.org) (80.91.229.2) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 04 Mar 2008 13:50:25 +0000 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1JWXXH-00078Y-Og for dev@harmony.apache.org; Tue, 04 Mar 2008 13:50:27 +0000 Received: from 89.175.165.2 ([89.175.165.2]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 04 Mar 2008 13:50:27 +0000 Received: from egor.pasko by 89.175.165.2 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 04 Mar 2008 13:50:27 +0000 X-Injected-Via-Gmane: http://gmane.org/ To: dev@harmony.apache.org From: Egor Pasko Subject: Re: Architecture Questions - Moving to JreLite Date: 04 Mar 2008 16:50:21 +0300 Lines: 86 Message-ID: <0vqhcfmoaxu.fsf@gmail.com> References: <000b01c87dde$0660d480$0300000a@animal> <0vqpruaocvj.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 89.175.165.2 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.4 Sender: news X-Virus-Checked: Checked by ClamAV on apache.org On the 0x3FD day of Apache Harmony Pavel Pervov wrote: > Egor, > > I had an argument with JIT guys some time earlier about splitting JET > and OPT into separate libraries. Their main argument was "shared > code". AFAIR it was memory management, collections, and logging. JET does not use collections, shared stuff is: PMF, Logging, MemoryManager, microkernel, IEEE754_fmod_double, tiny platform-dependant stuff I believe it fits into 500K or maybe 200K :) > Completing your idea we can move shared code into dynamic lib and use > it dynamically from both JITs. > > Pavel. > > On 04 Mar 2008 16:08:32 +0300, Egor Pasko wrote: > > On the 0x3FD day of Apache Harmony Pavel Pervov wrote: > > > Johnny, > > > > > > see inline. > > > > > > On 3/4/08, Johnny Kewl wrote: > > > > > > > ICU? > > > > (Unicode... its too big to be good) > > > Which ICU? ICU4J is class library implementation of locales. ICU4JNI > > > is used by DRLVM for verifying java identifiers. > > > > > > > Its almost perfect, the only area that naturally needs work is that the VM > > > > does not distinguish between a user using the program and a programmer > > > > that wants extra functionality... So Debuggers profiling tooling has to be > > > > made all optional and dynamic links > > > Its possible, but VM has lots of hooks inside of it related to JVMTI, > > > and JVMTI itself is not blazingly fast. Separating into dynamic > > > linkage won't make things faster. > > > > > > > Two JIT compilers ... beautiful, the OPT compiler must be optional or late > > > > loading, its perfect, if they can be separated? > > > In short - no. In more details, JET and OPT has lots of common > > > functionality and separating them whould mean bigger code size. > > > > by lots you mean not very lots, right? :) > > > > the simple (and possibly incorect) solution might be to package two > > libraries based on jitrino/src subdirectories: > > > > 1. jet+shared+main (jet.{so,dll}) > > 2. the rest (opt.{so,dll}) > > > > now opt depends on jet, yey (not ery good for systems, where we do not > > support jet, but those systems are packaged differently anyway) > > > > looks like rather easy and with no big increase in code size.. > > > > > > Where are fonts actually used, not directly in the VM I hope, ie its AWT and > > > > Swing classes, that *once loaded use them*, is that right? > > > > Something like classloader loads up a Swing class, it draws, this is a > > > > method call outside VM logic and links straight out to a system dll? > > > > Where is the native side of AWT and SWING living... in harmonyvm.dll? > > > harmonyvm.dll is the virtual machine itself. Harmony is pretty modular > > > and does not mix dependencies (well, does not mix lots of dependencies > > > ;)). > > > > > > > Thanks... Harmony is great... > > > This is unquestionable. ;) > > > > > > Pavel. > > > > > > > -- > > Egor Pasko > > > > > > > -- > Pavel Pervov, > Intel Enterprise Solutions Software Division > -- Egor Pasko