ATE534951T1 - Verfahren und gerät zur erzeugung von effizienten nativen verfahren, die einen bytekodeinterpretierer erweitern - Google Patents

Verfahren und gerät zur erzeugung von effizienten nativen verfahren, die einen bytekodeinterpretierer erweitern

Info

Publication number
ATE534951T1
ATE534951T1 AT01939519T AT01939519T ATE534951T1 AT E534951 T1 ATE534951 T1 AT E534951T1 AT 01939519 T AT01939519 T AT 01939519T AT 01939519 T AT01939519 T AT 01939519T AT E534951 T1 ATE534951 T1 AT E534951T1
Authority
AT
Austria
Prior art keywords
native
jvm
interface
special
interpreter loop
Prior art date
Application number
AT01939519T
Other languages
English (en)
Inventor
Dean Long
Christopher Plummer
Nedim Fresko
Original Assignee
Oracle America Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oracle America Inc filed Critical Oracle America Inc
Application granted granted Critical
Publication of ATE534951T1 publication Critical patent/ATE534951T1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/76Adapting program code to run in a different environment; Porting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)
AT01939519T 2000-05-25 2001-05-25 Verfahren und gerät zur erzeugung von effizienten nativen verfahren, die einen bytekodeinterpretierer erweitern ATE534951T1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US20748200P 2000-05-25 2000-05-25
PCT/US2001/017126 WO2001090885A2 (en) 2000-05-25 2001-05-25 Method and apparatus for creating efficient native methods that extend a bytecode interpreter

Publications (1)

Publication Number Publication Date
ATE534951T1 true ATE534951T1 (de) 2011-12-15

Family

ID=22770743

Family Applications (1)

Application Number Title Priority Date Filing Date
AT01939519T ATE534951T1 (de) 2000-05-25 2001-05-25 Verfahren und gerät zur erzeugung von effizienten nativen verfahren, die einen bytekodeinterpretierer erweitern

Country Status (6)

Country Link
US (1) US6886157B2 (de)
EP (1) EP1301854B1 (de)
AT (1) ATE534951T1 (de)
AU (1) AU2001265028A1 (de)
ES (1) ES2376191T3 (de)
WO (1) WO2001090885A2 (de)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6915508B2 (en) * 2000-06-12 2005-07-05 Sun Microsystems, Inc. Method and apparatus for eliminating C recursion from a Java™ bytecode interpreter
US6604167B1 (en) * 2000-09-28 2003-08-05 International Business Machines Corporation Method and apparatus traversing stacks for just-in-time compilers for Java virtual machines
ATE516537T1 (de) * 2002-10-01 2011-07-15 Sap Ag Prüfung von skriptsprachen mit schnittstellen mittels annotationen in xml
US7360206B1 (en) * 2003-03-13 2008-04-15 Network Appliance, Inc. Method for an interpreter to control a native function call based on a signature of the native function
GB0416259D0 (en) * 2004-07-21 2004-08-25 Ibm A method and system for enabling a server application to be executed in the same virtual machine as a client application using direct object oriented
KR100597413B1 (ko) * 2004-09-24 2006-07-05 삼성전자주식회사 자바 바이트코드 변환 방법 및 상기 변환을 수행하는 자바인터프리터
GB0424756D0 (en) * 2004-11-10 2004-12-08 Ibm Executing a native software routine in a virtual machine
US8578339B2 (en) * 2007-09-26 2013-11-05 Symantec Corporation Automatically adding bytecode to a software application to determine database access information
US8887141B2 (en) * 2007-09-28 2014-11-11 Symantec Corporation Automatically modifying a native code module accessed from virtual machine bytecode to determine execution information
US20090249311A1 (en) * 2008-03-31 2009-10-01 International Business Machines Corporation Sharing a native module of compiled code using an abstraction module of interpreted code in a virtual machine environment
US20090254881A1 (en) * 2008-04-04 2009-10-08 Microsoft Corporation Code generation techniques for administrative tasks
US8661407B2 (en) * 2008-06-26 2014-02-25 Microsoft Corporation Framework for programming embedded system applications
US9910688B2 (en) * 2008-11-28 2018-03-06 Red Hat, Inc. Implementing aspects with callbacks in virtual machines
CN101782868A (zh) * 2009-01-21 2010-07-21 国际商业机器公司 一种用于对本地方法调用进行性能测试的方法和装置
US8776033B2 (en) * 2010-12-23 2014-07-08 International Business Machines Corporation Batch dispatch of java native interface calls
WO2014164987A1 (en) * 2013-03-12 2014-10-09 Bluebox Security Inc. Methods for dynamic mobile application behavior modification subject to a behavior policy
EP3082034A1 (de) * 2015-04-17 2016-10-19 Gemalto Sa Verfahren zur modifizierung der ausführung eines plattformunabhängigen verfahren einer integrierten schaltungskarte
US11061703B2 (en) 2019-01-10 2021-07-13 International Business Machines Corporation Managed runtime data marshaling for native code access using a thread local native buffer
CN110888674B (zh) * 2019-11-28 2022-08-09 支付宝(杭州)信息技术有限公司 在Python虚拟机中执行安全计算的方法及装置
US11875168B2 (en) 2020-03-19 2024-01-16 Oracle International Corporation Optimizing execution of foreign method handles on a virtual machine
US11513779B2 (en) * 2020-03-19 2022-11-29 Oracle International Corporation Modeling foreign functions using executable references
US11809839B2 (en) 2022-01-18 2023-11-07 Robert Lyden Computer language and code for application development and electronic and optical communication

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735761B1 (en) * 1998-05-15 2004-05-11 International Business Machines Corporation Compile method frame detection method and device code discarding method and computer
US6205578B1 (en) * 1998-08-14 2001-03-20 Ati International Srl Interpreter for stack-based languages
US6295643B1 (en) * 1998-12-10 2001-09-25 International Business Machines Corporation Method and apparatus for improving java virtual machine performance using persistent execution information
KR20010083781A (ko) * 1999-01-06 2001-09-01 요트.게.아. 롤페즈 메모리 요건을 줄인 프로그램 코드 실행 장치
US6173442B1 (en) * 1999-02-05 2001-01-09 Sun Microsystems, Inc. Busy-wait-free synchronization
US6675371B1 (en) * 1999-04-30 2004-01-06 Hewlett-Packard Development Company, L.P. Java and native application window integration
US6507946B2 (en) * 1999-06-11 2003-01-14 International Business Machines Corporation Process and system for Java virtual method invocation
US6704926B1 (en) * 2000-09-28 2004-03-09 International Business Machines Corporation Bimodal Java just-in-time complier

Also Published As

Publication number Publication date
US6886157B2 (en) 2005-04-26
ES2376191T3 (es) 2012-03-09
WO2001090885A2 (en) 2001-11-29
WO2001090885A3 (en) 2003-01-16
AU2001265028A1 (en) 2001-12-03
US20020066087A1 (en) 2002-05-30
EP1301854B1 (de) 2011-11-23
EP1301854A2 (de) 2003-04-16

Similar Documents

Publication Publication Date Title
ATE534951T1 (de) Verfahren und gerät zur erzeugung von effizienten nativen verfahren, die einen bytekodeinterpretierer erweitern
JP3894698B2 (ja) 資源の消費を最小限にするハイブリッド式ジャストインタイム・コンパイラ
MY131818A (en) Data processing using multiple instruction sets.
US7409678B2 (en) Compiler, compilation and storage
SG11201907111QA (en) Method and device for processing smart contracts
WO2001097029A3 (en) Method and apparatus for implementing an extended virtual machine
WO2002025426A3 (en) Lazy compilation of template-generated classes in dynamic compilation execution environments
WO2004070584A3 (en) Method and apparatus for converting objects between weakly and strongly typed programming frameworks
EP1164478A3 (de) Gerät zur Auflösung von Datenreferenzen in erzeugtem Kode
US20080229279A1 (en) Method for automatic generation of schema mapping application code
EP1026591A3 (de) Verfahren , Vorrichtung und hergestellter Gegenstand zur Analyse von Speichergebrauch
EP1076290A3 (de) Verfahren zum bei Bedarf Laden und Ausführen einer Netzwerkanwendung
AU2380700A (en) Generating compiled programs for interpretive runtime environments
WO2003100552A3 (en) Hybrid threads for multiplexing virtual machine
US8214815B2 (en) Reducing the run-time cost of invoking a server page
MY130960A (en) System for providing transitions between operating modes of a device
Daly et al. Platform independent dynamic java virtual machine analysis: the java grande forum benchmark suite
EP1306753A3 (de) Ausnahmebehandlung in Java Rechnerumgebungen
EP1548577A3 (de) System und Verfahren zur Anwendung von Objektbasierten Pipelines
ATE328321T1 (de) Erzeugung von zufallszahlen
EP1830255A3 (de) Verfahrensausführung in einer Rechnerumgebung
HK1041732A1 (en) Extending the attributes of an application generated using a fourth generation programming tool
JPH04314133A (ja) 情報処理装置
WO2001097028A3 (en) Method and apparatus for rewriting bytecodes to minimize runtime checks
WO1999044138A3 (en) Stack-based security requirements