CN100349114C - 用于增加java程序处理能力的系统和方法 - Google Patents
用于增加java程序处理能力的系统和方法 Download PDFInfo
- Publication number
- CN100349114C CN100349114C CNB2005100020788A CN200510002078A CN100349114C CN 100349114 C CN100349114 C CN 100349114C CN B2005100020788 A CNB2005100020788 A CN B2005100020788A CN 200510002078 A CN200510002078 A CN 200510002078A CN 100349114 C CN100349114 C CN 100349114C
- Authority
- CN
- China
- Prior art keywords
- class file
- class
- compiler
- information
- loading
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000005540 biological transmission Effects 0.000 claims description 24
- 238000012545 processing Methods 0.000 claims description 20
- 238000002360 preparation method Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/443—Optimisation
- G06F8/4441—Reducing the execution time required by the program code
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47K—SANITARY EQUIPMENT NOT OTHERWISE PROVIDED FOR; TOILET ACCESSORIES
- A47K3/00—Baths; Douches; Appurtenances therefor
- A47K3/28—Showers or bathing douches
- A47K3/30—Screens or collapsible cabinets for showers or baths
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45516—Runtime code conversion or optimisation
- G06F9/45525—Optimisation or modification within the same instruction set architecture, e.g. HP Dynamo
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05Y—INDEXING SCHEME ASSOCIATED WITH SUBCLASSES E05D AND E05F, RELATING TO CONSTRUCTION ELEMENTS, ELECTRIC CONTROL, POWER SUPPLY, POWER SIGNAL OR TRANSMISSION, USER INTERFACES, MOUNTING OR COUPLING, DETAILS, ACCESSORIES, AUXILIARY OPERATIONS NOT OTHERWISE PROVIDED FOR, APPLICATION THEREOF
- E05Y2900/00—Application of doors, windows, wings or fittings thereof
- E05Y2900/10—Application of doors, windows, wings or fittings thereof for buildings or parts thereof
- E05Y2900/114—Application of doors, windows, wings or fittings thereof for buildings or parts thereof for showers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Public Health (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
一种用于增加Java程序的处理能力的系统和方法。在该方法中,类加载器从预定的存储区域将类文件传输或加载到具有预定的大小的物理单元中的存储器。加载时编译器链接并编译已经由类加载器加载到物理单元中的类文件。当链接和编译类文件时,加载时编译器确定已经被传输到物理单元中的存储器的类文件中是否包含逻辑单元信息,链接该逻辑单元信息,并且当该逻辑单元信息对应于Java方法时编译该方法。
Description
技术领域
本发明涉及一种用于增加Java程序处理能力的系统和方法,更具体地说,涉及一种用于通过在Java虚拟机中同时地加载和编译类文件来增加Java程序处理能力的系统和方法。
背景技术
图1示出配备有Java虚拟机的传统的信息设备的结构。该信息设备可以是便携电话、个人数字助理(PDA)、数字电视(TV)、机顶盒、个人电脑(PC)或类似物。
该信息设备包括中央处理单元(CPU)、网络接口、例如硬盘或闪速存储器的永久存储器、主存储器、输入装置、输出/显示装置和用于连接其它装置的连接装置。
Java虚拟机驻留在信息设备的主存储器中,并且组成Java应用程序的Java类被加载到主存储器上。输入装置可以是PC的键盘或鼠标或数字TV或机顶盒的遥控接收器。输出/显示装置可以是PC的图形适配器或安装在数字TV中或外部连接到数字TV的显示装置。连接装置可以是通用串行总线(USB)、IEEE 1394、RF装置、红外装置或蓝牙装置。如上所述,Java虚拟机可以被驱动的环境能被包括在所有类型的信息设备中,而不局限于特定类型的设备。
此外,Java类可以通过网络接口被外部地接收,可以从永久存储器接收,或可以从连接到外部装置连接器的外部装置接收。通过特定的网络连接器,网络接口将信息设备连接到外部服务器,并传输Java类。网络的类型可以是例如局域网(LAN)或广域网(WAN)的有线的包通信网络、例如无线LAN、无线码分多址(CDMA)网络、无线全球移动系统(GSM)网络,或无线通用分组无线业务(GPRS)网络的无线/移动通信网络、或例如空中传输(over-the-air)数字TV网、有线TV网、或卫星TV网的有线/无线广播网。换句话说,网络的类型不限于特定的类型而可以是多种类型的网络中的任何一种。
图2示出传统的Java虚拟机的结构。传统的Java虚拟机主要包括:类加载器10,解释器20,编译器30,和运行时系统40。
类加载器10从网络或文件系统读取Java类文件,根据包含在Java类文件中的内部信息适当地将Java类文件放置在存储器中,并初始化Java类文件的内部状态。
解释器20被提供以运行包含在Java类文件中的可执行代码。更明确地讲,解释器20识别并执行Java字节码指令。换句话说,解释器20识别并执行包含在由类加载器10读取的Java类文件中的方法的字节码。
编译器30在执行Java类文件期间将Java字节码转换成用于安装在信息设备中的CPU的机器码。即时(JIT)编译器被广泛地用作编译器30。换句话说,编译器30将包含在由类加载器10读取的Java类文件中的方法的字节码转换成用于CPU的机器码。
运行时系统40联系并管理Java虚拟机的部件,即:类加载器10、解释器20和编译器30。
图3示出传统的Java类文件的结构。
Java类通常以命名为类文件的特定的文件格式传输或储存。类文件包含类的多个属性。类文件包含:指出类的基本属性的类头、管理所有的常量的常量池、含有关于类文件的接口的信息的接口、含有关于字段的信息的字段、和含有定义在类文件中的每一方法的可执行字节码的方法。
图4是在传统的Java虚拟机中传输并执行Java类文件的过程的流程图。传输Java类文件包含加载、初始化和执行。
加载包含从网络或盘将Java类文件传输到存储器和链接处理。链接包含验证、准备和解析。
验证是验证Java类文件的结构和内容是否正确的处理。在该处理中,验证包含在类方法中的所有的字节码是否有效。准备是设置定义在类中的常量或变量的缺省值的处理。解析是将在常量池中描述的符号替换成用于执行的必要的资源的物理位置信息。
加载之后,加载到存储器中的类文件被初始化并且随后被执行。在执行中,执行模式根据包含在类中的可执行代码来确定。
当方法包含字节码时,确定是否将字节码转换成用于CPU的机器码。当确定不将字节码转换成机器码时,解释器直接逐一读取并执行字节码。当确定将字节码转换成机器码时,编译器读取字节码并将它们转换成机器码,然后机器码被直接执行。
传统地,类文件的传输和链接被顺序地执行,并且直到类文件被完全地传输链接才被执行。因此,执行类文件的传输、链接、初始化和运行占用大量的时间。更具体地讲,当类文件通过网络被传输时,类文件的传输所需的时间根据网络的带宽或类文件的大小而变化。
此外,在链接处理中,在验证类文件期间消耗大量的CPU资源。而且,在执行期间编译方法的处理中消耗额外的时间。特别地,随着更多高级的编译技术被使用,编译所需的时间增加。结果,由于一系列这样的处理,应用程序的整体性能恶化。
标题为“字节码执行处理,方法,数据处理系统,和实现它们的计算机程序产品(Bytecode Execution Process,Method,Data Processing System,andComputer Program Products Implementing then)”的公开号为2000-0057010的韩国专利公开了字节码执行处理,其包含:使用类加载器加载用于执行的字节码,确定是否编译该字节码,并将该字节码传输给JIT编译器,或当确定不将该字节码JIT编译时将该字节码传输给解释器。然而,在加载字节码的处理中同时地执行字节码的传输、链接和编译的方法从未被公开。
发明内容
本发明提供一种用于通过在Java虚拟机中同时执行类文件的加载和编译来增加Java程序的处理能力从而增加应用程序的整体性能的系统和方法。
根据本发明的一方面,提供一种用于增加Java程序的处理能力的系统。该系统包括:加载Java程序的类文件的类加载器;和编译由类加载器加载的类文件的加载时编译器(load-time compiler)。
根据本发明的另一方面,提供一种增加Java程序处理能力的方法。该方法包括:允许类加载器将类文件从预定的存储区域传输到具有预定的大小的物理单元中的存储器;确定逻辑单元信息是否包含在已经被传输到存储器的类文件的物理单元中;和允许加载时编译器编译包含在传输的类文件中的逻辑单元信息。
附图说明
通过参考附图对其优选实施例进行的详细描述,本发明的上述和其他特点和优点将会变得清楚,其中:
图1示出装备有Java虚拟机的传统的信息设备的结构;
图2示出传统的Java虚拟机的结构;
图3示出传统的Java类文件的结构;
图4是在传统的Java虚拟机中传输并执行Java类文件的过程的流程图;
图5是根据本发明实施例的用于增加Java程序处理能力的系统的示意图;
图6是根据本发明实施例的增加Java程序处理能力的方法的示意性流程图;
图7是根据本发明实施例的由加载时编译器执行的编译操作的流程图。
具体实施方式
现在将参考附图对本发明的示例性实施例进行详细的描述。
图5是根据本发明实施例的用于增加Java程序处理能力的系统的示意图。该系统包含类加载器110、加载时编译器120、和运行时系统130。
类加载器110将Java程序的类文件加载到存储器。更明确地,类加载器110将类文件从预定的存储区域加载到具有预定的大小的物理单元中。此外,类加载器110标记到当前为止已经传输的类文件的数量以使加载时编译器120能在链接和编译该类文件时参考传输的类文件的数量。该预定的存储区域可以是通过网络或盘连接的远程系统。类文件被分成具有预定的大小的单元,例如,当类文件被通过网络传输时的包或当类文件被从盘传输时的块。
加载时编译器120链接并编译由类加载器110加载的类文件。更明确地,加载时编译器120确定到当前为止已经由类加载器110加载到物理单元中的类文件是否包含特定类型的逻辑单元信息,链接逻辑单元信息,并当该逻辑单元信息对应于方法时,编译包含在该方法中的字节码。加载时编译器120参考由类加载器110标记的当前传输的类文件的数量来确定到当前为止加载的类文件是否包含逻辑单元信息,然后链接并编译类文件。换句话说,在类加载器110从例如通过网络或盘连接的远程系统将类文件加载到存储器并标记到当前为止传输的类文件的数量之后,加载时编译器120检查标记的传输的类文件的数量,然后链接并编译包含在到当前为止传输的数个类文件中的特定类型的逻辑单元信息。逻辑单元信息可以是包含在类文件中的类头信息、常量池信息、接口信息、字段信息和方法信息之一。
此外,加载时编译器120在链接和编译期间执行验证、准备和解析。
运行时系统130管理运行类文件所需的资源。类加载器110和加载时编译器120使用各自的线程同时地运行。
同时,被用于传统的Java虚拟机中的解释器20和编译器30可以被可选地包含在本发明的Java虚拟机100中或从其中排除。换句话说,当在本发明的实施例中,每一个类文件被在加载时不考虑类文件的类型而被基本地编译时,不需要解释器20和编译器30。然而,当在本发明的另一种实施例中,特定类型的类文件或特定类型的类文件方法不被编译时,需要解释器20和编译器30来直接地运行字节码并在运行期间编译该字节码。
在本发明的实施例中,Java虚拟机100已经被描述。然而,本发明可被应用于提供等同于Java虚拟机的功能的其它类型的虚拟机,例如Microsoft的通用语言运行时(CLR)虚拟机和Smalltalk虚拟机。
图6是根据本发明实施例的增加Java程序处理能力的方法的示意性的流程图。参考图5和图6,在操作步骤S100中,类加载器110启动从预定的存储区域传输或加载在具有预定的大小的物理单元中的类文件到存储器中。这时,类加载器110标记到当前为止已经被传输的类文件的物理单元的数量使得当编译该类文件时加载时编译器120能参考标记的传输的类文件的数量。
加载时编译器120检查标记的到当前为止传输的类文件的数量,然后在操作步骤S110中确定所有的将被处理的特定类型的逻辑单元信息是否包含在一个或多个加载到存储器中的类文件的物理单元中。这里,逻辑单元信息可以是包含在类文件中的类头信息、常量池信息、接口信息、字段信息和方法信息中的一种。
其次,当确定所有的特定类型的逻辑单元信息包含在到当前为止传输的类文件中时,在操作步骤S120中,加载时编译器120链接并编译该特定类型的逻辑单元信息。然而,当确定到当前为止传输的类文件中没有包含所有的特定类型的逻辑单元信息时,在操作步骤S130中加载时编译器120挂起线程并待机直到类加载器110将后面的类文件的物理单元加载到存储器。
在操作步骤S140中,加载后面的类文件的物理单元之后,类加载器110标记传输的类文件的增量并唤醒加载时编译器120的线程。重复操作步骤S110、S120、S130和S140直到在操作步骤S150中加载时编译器120处理包含在完整的类文件中的所有类型的逻辑单元信息。
其间,类加载器110和加载时编译器120分别使用各自的线程同时地运行。
在下文中,将参照图7详细描述根据本发明实施例的用于确定特定类型的逻辑单元信息是否包含在类文件中的过程和用于链接并编译类文件的过程。
图7是根据本发明实施例的由加载时编译器执行的链接和编译操作的流程图。在图7中显示的操作步骤可以被应用到在图6中显示的方法以确定特定类型的逻辑单元信息是否包含在类文件中并链接和编译该类文件。
参考图5和图7,在操作步骤S200中,加载时编译器120确定将要被处理的相应于逻辑单元信息的完整的类头信息是否包含在到当前为止已经由类加载器110加载到存储器的类文件中。
当确定当前的类文件包含完整的类头信息时,在操作步骤S210中类头信息的链接,即验证被执行。然而,当确定当前的类文件没有包含完整的类头信息时,在操作步骤S211中,加载时编译器120待机直到类加载器110加载类文件的后面的物理单元。
然后,在操作步骤S220到S291中,确定常量池信息、接口信息、字段信息和方法信息是否包含在到当前为止由类加载器110加载的类文件中,执行常量池信息、接口信息、字段信息和方法信息的链接,并加载后面的类文件的物理单元。操作步骤S220到S291以与执行操作步骤S200到S211相同的方式执行。然而,包含在方法中的字节码的编译可以在处理该方法信息时被另外地执行。
如此地描述了本发明的某些实施例后,在不脱离本发明的精神和范围的情况下,各种变换、修改和改进将对本领域的普通技术人员非常清楚。因此,前面的描述和附图不意味着限定。
如上所述,根据本发明,Java虚拟机同时地执行类文件的加载和编译使得编译在类文件的加载时被执行,因此提高了应用程序的整体运行性能。
此外,根据本发明,在类文件被加载之后执行的编译处理造成的时间延迟能被最小化。另外,由于使用用于CPU的机器码直接地执行类文件方法,用于在类文件的传输和加载之后执行的编译的时间和类的执行时间能被减少。由于在单一的编译操作期间处理的类文件的大小与传统的编译方法相比被减小,类文件的传输时间能被减少。
而且,由于本发明允许利用现存的类文件的标准格式,虚拟机的优点,即便携性能被充分地利用。
Claims (15)
1、一种用于增加Java程序的处理能力的系统,该系统包括:
类加载器,用于加载Java程序的类文件;和
加载时编译器,用于编译由类加载器加载的类文件,
其中,类加载器和加载时编译器使用各自的线程执行同时的操作。
2、如权利要求1所述的系统,其中,类文件被加载到具有预定的大小的物理单元中。
3、如权利要求1所述的系统,其中,加载时编译器确定下次将被处理的逻辑单元信息是否包含在类文件中,并且如果包含,则编译该逻辑单元信息。
4、如权利要求3所述的系统,其中,逻辑单元信息是指类头信息、常量池信息、接口信息、字段信息和方法信息中的任一种。
5、如权利要求3所述的系统,其中,加载时编译器在编译逻辑单元信息期间验证Java类文件的结构和内容是否正确。
6、如权利要求3所述的系统,其中,加载时编译器在编译逻辑单元信息期间执行设置在至少一个类中定义的变量的缺省值的准备。
7、如权利要求1所述的系统,其中,加载时编译器在编译逻辑单元信息期间执行至少一个其它类的字段和方法中的一个的参考值的解析。
8、一种增加Java程序处理能力的方法,该方法包括:
在类加载器上,将类文件从预定的存储区域传输到具有预定的大小的物理单元中的存储器:
确定逻辑单元信息是否包含在已经被传输到存储器的类文件的物理单元中;和
在加载时编译器上,编译包含在传输的类文件中的逻辑单元信息,
其中,类加载器和加载时编译器的操作使用各自的线程,被同时执行。
9、如权利要求8所述的方法,其中,预定的存储区域是指外部存储装置和信息设备中的一个,其中,所述外部存储装置和信息设备中的一个被连接到通过网络、盘和外部连接装置中的至少一种连接的远程系统。
10、如权利要求9所述的方法,其中,所述外部连接装置包含通用串行总线连接器、IEEE 1394连接器、RF连接器、红外连接器和蓝牙连接器中的至少一种。
11、如权利要求8所述的方法,其中,逻辑单元信息包括类头、常量池、接口、字段和方法中的至少一种。
12、如权利要求8所述的方法,其中,确定步骤包括:当确定传输到存储器的类文件没有包含所有的逻辑单元信息时,待机以传输类文件的后面的物理单元。
13、如权利要求8所述的方法,其中,编译步骤包括:在编译逻辑单元信息期间验证Java类文件的结构和内容是否正确。
14、如权利要求8所述的方法,其中,编译步骤包括:在编译逻辑单元信息期间执行设置定义在类中的变量的缺省值的准备。
15、如权利要求8所述的方法,其中,编译步骤包括:在编译逻辑单元信息期间执行至少一个其它类的字段和方法中的一个的参考值的解析。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR2655/2004 | 2004-01-14 | ||
KR1020040002655A KR100654428B1 (ko) | 2004-01-14 | 2004-01-14 | 자바 프로그램의 처리 속도를 향상시키는 시스템 및 그 방법 |
KR2655/04 | 2004-01-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1641571A CN1641571A (zh) | 2005-07-20 |
CN100349114C true CN100349114C (zh) | 2007-11-14 |
Family
ID=36096309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100020788A Expired - Fee Related CN100349114C (zh) | 2004-01-14 | 2005-01-14 | 用于增加java程序处理能力的系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20050155028A1 (zh) |
EP (1) | EP1669861A3 (zh) |
JP (1) | JP2005202963A (zh) |
KR (1) | KR100654428B1 (zh) |
CN (1) | CN100349114C (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7844960B2 (en) * | 2005-09-14 | 2010-11-30 | International Business Machines Corporation | Optimizing software program execution during class loading phase |
CN100339831C (zh) * | 2005-12-14 | 2007-09-26 | 浙江大学 | 应用于Java操作系统中虚拟机的编译体系实现方法 |
WO2007111751A2 (en) * | 2005-12-20 | 2007-10-04 | Springett John C | Architecture for a smart enterprise framework and methods thereof |
KR100765602B1 (ko) * | 2006-02-03 | 2007-10-09 | 현대자동차주식회사 | 무선통신 환경에서의 대용량 메시징 데이타 분할 전송시스템 및 방법 |
KR100818919B1 (ko) | 2006-02-24 | 2008-04-03 | 삼성전자주식회사 | 메소드 호출 방법 및 이를 이용한 자바 가상 머신 |
US8250559B2 (en) * | 2006-04-12 | 2012-08-21 | Oracle America, Inc. | Supporting per-program classpaths with class sharing in a multi-tasking virtual machine |
KR100828364B1 (ko) * | 2006-06-28 | 2008-05-08 | 삼성전자주식회사 | 가상 프로파일을 이용한 자바 jit 컴파일 방법 및시스템 |
KR101235414B1 (ko) * | 2006-08-18 | 2013-02-20 | 엘지전자 주식회사 | 데이터 방송 수신기에서 스레드 관리 방법 |
CN100465894C (zh) * | 2007-01-12 | 2009-03-04 | 中山大学 | 一种Java Processor启动时类装载方法 |
CN102103489A (zh) * | 2011-01-28 | 2011-06-22 | 武汉天喻信息产业股份有限公司 | 一种提高静态域访问指令执行效率的方法 |
US10216500B2 (en) * | 2012-02-10 | 2019-02-26 | Oracle International Corporation | Method and apparatus for synchronization annotation |
US9298448B2 (en) * | 2013-05-21 | 2016-03-29 | Red Hat, Inc. | System and method for run time dependency resolution |
CN103729235A (zh) * | 2013-12-24 | 2014-04-16 | 华为技术有限公司 | Java虚拟机的编译方法和Java虚拟机 |
US9286085B2 (en) | 2014-06-27 | 2016-03-15 | International Business Machines Corporation | Correlating class loader objects across execution environments |
CN105446709B (zh) * | 2014-07-29 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 一种Java应用处理方法及装置 |
CN106681749B (zh) * | 2015-11-11 | 2021-01-05 | 腾讯科技(深圳)有限公司 | 基于安卓平台的局部代码补丁更新方法及装置 |
CN110119274A (zh) * | 2018-02-05 | 2019-08-13 | 北京智明星通科技股份有限公司 | 一种数据编译的方法、装置以及电子终端、计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1238500A (zh) * | 1998-04-07 | 1999-12-15 | 太阳微系统公司 | 用于进行静态初始化的方法和系统 |
GB2365554A (en) * | 2000-05-31 | 2002-02-20 | Ibm | Virtual machine support for multiple aplications |
JP2002073345A (ja) * | 2000-08-25 | 2002-03-12 | Fujitsu Ltd | 情報処理装置及び記録媒体 |
US20020095664A1 (en) * | 2001-01-18 | 2002-07-18 | Wangtun Chou | Pre-interpretation and execution method for Java computer program language |
CN1427968A (zh) * | 2000-03-09 | 2003-07-02 | 太阳微系统有限公司 | 用于在无虚拟存储管理器的数据处理设备中预加载类的系统和方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6075942A (en) * | 1998-05-04 | 2000-06-13 | Sun Microsystems, Inc. | Encoding machine-specific optimization in generic byte code by using local variables as pseudo-registers |
US6230184B1 (en) * | 1998-10-19 | 2001-05-08 | Sun Microsystems, Inc. | Method and apparatus for automatically optimizing execution of a computer program |
US6324687B1 (en) * | 1998-12-03 | 2001-11-27 | International Business Machines Corporation | Method and apparatus to selectively control processing of a method in a java virtual machine |
US6842894B1 (en) * | 1999-04-05 | 2005-01-11 | Gateway, Inc. | Dynamic Compiling |
US6711619B1 (en) * | 1999-12-15 | 2004-03-23 | Hewlett-Packard Development Company, L.P. | Method, system, and apparatus for distributing and using computer-based applications over a network |
US6918106B1 (en) * | 2000-07-31 | 2005-07-12 | Sun Microsystems, Inc. | Method and apparatus for collocating dynamically loaded program files |
KR20020032889A (ko) * | 2000-10-27 | 2002-05-04 | 오길록 | 자바 클래스 파일 분석을 이용한 클래스 호출관계 표시 방법 |
US6964039B2 (en) * | 2000-12-13 | 2005-11-08 | Esmertec Ag | Method to create optimized machine code through combined verification and translation of JAVA™ bytecode |
US6718539B1 (en) * | 2000-12-22 | 2004-04-06 | Lsi Logic Corporation | Interrupt handling mechanism in translator from one instruction set to another |
KR100439186B1 (ko) * | 2001-12-28 | 2004-07-05 | 한국전자통신연구원 | 자바 가상머신의 멀티 쓰레드 시스템에서의 동기화 장치및 방법 |
WO2004027600A1 (ja) * | 2002-08-30 | 2004-04-01 | Renesas Technology Corp. | データ処理装置及びicカード |
US7370321B2 (en) * | 2002-11-14 | 2008-05-06 | Microsoft Corporation | Systems and methods to read, optimize, and verify byte codes for a multiplatform jit |
-
2004
- 2004-01-14 KR KR1020040002655A patent/KR100654428B1/ko not_active IP Right Cessation
-
2005
- 2005-01-08 EP EP05250071A patent/EP1669861A3/en not_active Ceased
- 2005-01-12 US US11/033,529 patent/US20050155028A1/en not_active Abandoned
- 2005-01-13 JP JP2005006907A patent/JP2005202963A/ja active Pending
- 2005-01-14 CN CNB2005100020788A patent/CN100349114C/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1238500A (zh) * | 1998-04-07 | 1999-12-15 | 太阳微系统公司 | 用于进行静态初始化的方法和系统 |
CN1427968A (zh) * | 2000-03-09 | 2003-07-02 | 太阳微系统有限公司 | 用于在无虚拟存储管理器的数据处理设备中预加载类的系统和方法 |
GB2365554A (en) * | 2000-05-31 | 2002-02-20 | Ibm | Virtual machine support for multiple aplications |
JP2002073345A (ja) * | 2000-08-25 | 2002-03-12 | Fujitsu Ltd | 情報処理装置及び記録媒体 |
US20020095664A1 (en) * | 2001-01-18 | 2002-07-18 | Wangtun Chou | Pre-interpretation and execution method for Java computer program language |
Also Published As
Publication number | Publication date |
---|---|
CN1641571A (zh) | 2005-07-20 |
EP1669861A2 (en) | 2006-06-14 |
KR20050074766A (ko) | 2005-07-19 |
EP1669861A3 (en) | 2008-02-06 |
JP2005202963A (ja) | 2005-07-28 |
KR100654428B1 (ko) | 2006-12-06 |
US20050155028A1 (en) | 2005-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100349114C (zh) | 用于增加java程序处理能力的系统和方法 | |
EP1410209B1 (en) | System and method for field diagnosis of wireless communications device system software | |
CN110187912B (zh) | 一种节点选择方法和装置 | |
US6295645B1 (en) | Method and apparatus for providing downloadable functionality to an embedded coprocessor | |
EP0930567A2 (en) | Method and apparatus for extending security model to native code | |
US20040205746A9 (en) | System and method for field diagnosis of wireless communications device system software | |
CN110673887B (zh) | 应用程序启动方法、装置、终端设备及可读存储介质 | |
US7155550B2 (en) | Program-executing apparatus and portable information processing apparatus | |
CN110058850B (zh) | 一种应用的开发方法、装置以及存储介质 | |
Lopes et al. | MASPOT: A mobile agent system for Sun SPOT | |
CN112527449B (zh) | 一种集群节点标签创建方法、系统及电子设备和存储介质 | |
CN101627368A (zh) | 计算机图形再现 | |
US20210091888A1 (en) | Data indicating method and related products | |
KR100725386B1 (ko) | 가상 머신 어플리케이션을 실행하는 방법 및 그 방법을이용한 디지털 방송 수신기 | |
CN113946602A (zh) | 数据查找方法、装置、设备和介质 | |
EP0930793A1 (en) | Mobile equipment with a plurality of processors | |
CN106775916B (zh) | 减小应用安装包的方法、装置及电子设备 | |
CN111198770B (zh) | Ros1消息的通信方法、装置和系统、转换方法和装置 | |
CN108459885A (zh) | 一种资源分散加载的方法及其单片机 | |
CN111078233B (zh) | 一种应用推广的实现方法、装置、设备及存储介质 | |
CN104199656A (zh) | 一种定制信息添加方法及装置 | |
US20050055663A1 (en) | Method and apparatus for continuation-passing in a virtual machine | |
CN106484375B (zh) | 一种指令块加载方法、软交换设备及系统 | |
KR102550574B1 (ko) | 오픈 에이피아이를 이용한 에이아이 모델 연계 서비스 시스템 및 서비스 방법 | |
CN101197959A (zh) | 一种终端的控制方法、系统和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071114 Termination date: 20200114 |