Frameworks for loading and execution of object-based programs

Data processing: software development – installation – and managem – Software program development tool – Translation of code

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C717S139000, C717S140000, C717S166000

Reexamination Certificate

active

06996813

ABSTRACT:
Improved frameworks for loading and execution of portable, platform independent programming instructions within a virtual machine are described. The improved frameworks provides a mechanism that will generally improve the runtime performance of virtual machines by eliminating the need to always traverse a constant pool at runtime to execute a Java™ instruction. In addition, specific data structures that are suitable for use within a virtual machine and methods for creating such data structures are described. Accordingly, an enhanced Java™ bytecode representation having a pair of Java™ bytecode streams is disclosed. The enhanced Java™ bytecode has a Java™ code stream suitable for storing various Java™ commands as bytecodes within a code stream. A Java™ data stream of the enhanced Java™ bytecode representation is used to store the data parameters associated with the Java™ commands in the code stream. Actual parameter values, or references to actual parameter values can be provided in the data stream. Thus, data parameters can be provided for efficient execution of Java™ instructions without requiring further processing of Constant Pool at run time. As a result, the performance of Java™ complaint virtual machine can be enhanced.

REFERENCES:
patent: 4086626 (1978-04-01), Chung
patent: 4199811 (1980-04-01), Borgerson et al.
patent: 4667290 (1987-05-01), Goss et al.
patent: 4910731 (1990-03-01), Sakurai et al.
patent: 5418964 (1995-05-01), Conner et al.
patent: 5815718 (1998-09-01), Tock
patent: 5838980 (1998-11-01), Guillen et al.
patent: 5872978 (1999-02-01), Hoskins
patent: 5878430 (1999-03-01), Lafuse
patent: 5893084 (1999-04-01), Morgan et al.
patent: 5899997 (1999-05-01), Ellacott
patent: 5903761 (1999-05-01), Tyma
patent: 5920720 (1999-07-01), Toutonghi et al.
patent: 5970242 (1999-10-01), O'Connor et al.
patent: 5978585 (1999-11-01), Crelier
patent: 6003038 (1999-12-01), Chen
patent: 6021469 (2000-02-01), Tremblay et al.
patent: 6026237 (2000-02-01), Berry et al.
patent: 6026485 (2000-02-01), O'Connor et al.
patent: 6047125 (2000-04-01), Agesen et al.
patent: 6072951 (2000-06-01), Donovan et al.
patent: 6072953 (2000-06-01), Cohen et al.
patent: 6075942 (2000-06-01), Cartwright, Jr.
patent: 6081665 (2000-06-01), Nilsen et al.
patent: 6096095 (2000-08-01), Halstead
patent: 6101580 (2000-08-01), Agesen et al.
patent: 6118940 (2000-09-01), Alexander, III et al.
patent: 6151618 (2000-11-01), Wahbe et al.
patent: 6151703 (2000-11-01), Crelier
patent: 6163780 (2000-12-01), Ross
patent: 6182202 (2001-01-01), Muthukkaruppan
patent: 6202208 (2001-03-01), Holiday, Jr.
patent: 6205578 (2001-03-01), Grove
patent: 6223202 (2001-04-01), Bayeh
patent: 6260187 (2001-07-01), Cirne
patent: 6292883 (2001-09-01), Augusteijn et al.
patent: 6317872 (2001-11-01), Gee et al.
patent: 6324685 (2001-11-01), Balassanian
patent: 6330709 (2001-12-01), Johnson et al.
patent: 6332215 (2001-12-01), Patel et al.
patent: 6338160 (2002-01-01), Patel et al.
patent: 6339841 (2002-01-01), Merrick et al.
patent: 6349377 (2002-02-01), Lindwer
patent: 6372286 (2002-04-01), Azuma et al.
patent: 6374286 (2002-04-01), Gee et al.
patent: 6412108 (2002-06-01), Blandy et al.
patent: 6427228 (2002-07-01), Wigger
patent: 6434625 (2002-08-01), Loen
patent: 6434694 (2002-08-01), Slaughter et al.
patent: 6442753 (2002-08-01), Gerard et al.
patent: 6446084 (2002-09-01), Shaylor et al.
patent: 6446254 (2002-09-01), Chapman et al.
patent: 6467037 (2002-10-01), Griesemer
patent: 6477702 (2002-11-01), Yellin et al.
patent: 6496871 (2002-12-01), Koyama et al.
patent: 6553565 (2003-04-01), Click, Jr. et al.
patent: 6557023 (2003-04-01), Taivalsaari
patent: 6557054 (2003-04-01), Reisman
patent: 6571388 (2003-05-01), Venkatraman et al.
patent: 6584612 (2003-06-01), Mueller et al.
patent: 6643711 (2003-11-01), Bracha et al.
patent: 6658421 (2003-12-01), Seshadri
patent: 6684394 (2004-01-01), Shann
patent: 6704803 (2004-03-01), Wilson et al.
patent: 6704923 (2004-03-01), Gosling
patent: 6738977 (2004-05-01), Berry et al.
patent: 6851108 (2005-02-01), Syme et al.
patent: 6851111 (2005-02-01), McGuire et al.
patent: 2002/0046298 (2002-04-01), Bak et al.
patent: 2002/0170041 (2002-11-01), Shann
patent: 2002/0170043 (2002-11-01), Bagley et al.
patent: 2002/0188726 (2002-12-01), Schick et al.
patent: 0810522 (1997-12-01), None
patent: 0943989 (1999-09-01), None
patent: 0 996 059 (2000-04-01), None
patent: 0996059 (2000-04-01), None
patent: WO99/18484 (1999-04-01), None
patent: WO99/31576 (1999-06-01), None
patent: WO01/22213 (2001-03-01), None
patent: WO02/41145 (2002-05-01), None
patent: WO02/077807 (2002-10-01), None
Case B: “Implementing The Java Virtual Machine Java's Complex Instruction Set Can Be Built in Software or Hardware,” Microprocessor Report, vol. 10, No. 4, Mar. 25, 1996, pp. 12-17.
McNeley KJ et al., “Emulating a Complex Instruction Set Computer With a Reduced Instruction Set Computer,” IEEE Micro, IEEE Inc. New York, US, vol. 7, No. 1, Feb. 1987, pp. 60-71.
Jean-Paul Billon, “JEFFWEG4 (J Executable File Fomat), Release 1.0 Achievements, Sep. 29, 2000,” J. Consortium Jeff Workiing Group, Online! Feb. 22, 2001, p. 1-24.
Jean-Paul Billon, “J Executable File Format (JEFF) Specification, Draft,” J Consortium Jeff Working Group, Online! Feb. 22, 2001, p. 1-43.
Lindholm et al.. “The Java Virtual Machine Specification”, Sep. 1996.
Robert Griesemer, entitled “Utilizing A Program Counter With One or More Data Counters For Executing Instructions,” U.S. Appl. No. 09/107,939, filed Jun. 30, 1998.
Patrice Po,imville, “Annotating Java Bytecode,” Project Report, McGill University, Online, Apr. 2000, pp. 1-7. XP-002254149.
Yourst, “Inside Java Class Files,” Dr. Dobb's Journal, Jan. 1998, XP-002254150.
Hummel et al., “Annotating the Java bytecodes in support of optimization,” Concurrency: Practice and Experience, John Wiley and Sons, vol. 9(11), Nov. 1997, pp. 1003-1016. XP-001131083.
Lindholm et al., “The Java Virtual Machine Specification,” Second Hand, Apr. 1999, pp. 117-132. XP-002254151.
Dahm, Markus, “Byte Code Engineering”, 1999, Java Information Tag, Proceedings of JIT'99: Java-Information'Tage, Dusseldorf, Germany, vol. 20-21, pp. 267-277, XP-002262007.
Meyer et al., “Java Virtual Machine” O'Reilly & Associates, Inc., 1997. XP-002262008.
Lambright H D, “Java Bytecode Optimizations” Proceedings of IEEE Compcon '97. San Jose, Feb. 23-26, 1997, pp. 206-210, XP-000751784.
Accomazzo E et al., “Integrating intermediate Code Optimization with Retargetable Code Generation” Microprocessing and Microprogramming, Elsevier Science Publishers, BV. Amsterdam, NL, vol. 30, No. 1/5, Aug. 1, 1990, pp. 475-481, XP000141684.
Tim Ritchey, “Java!” 1995, New Riders Publishing, pp. 326-343.
Jon Meyer & Troy Downing, “Java Virtual Machine,” O'Reilly & Associates, Inc. pp. 46, 56-57, 74-75, 389 and 391.
Microsoft press COmputer Dictionary Third Edition, pp. 294-295.
Piumarta et al., “Optimizing Direct Threaded Code by Selective Inlining,” Association for Computing Machinery, vol. 33, No. 5, pp. 291-300, May 1, 1998.XP-000766278.
Tommesani, “Programming models”.
Chang, Da-Wei et al., “EjVM: an economic Java run-time environment for embedded devices”,Software Practice and Experience, 2001, John Wiley & Sons, vol. 31, No. 2, pp. 129-146. XP-000987539.
Gosling, James et al., “The Java™ Language Specification”, 1996,The Java™ Language Specification, Chapter 12 Execution, pp. 215-236. XP-002032923.
Qian, Zhenyu et al., “A Formal Specification of Java™ Virtual Machine Instructions”, 1997,Technical Report, Universität Breman, pp. 1-32. XP-002255760.
Office Action mailed on Jun. 16, 2004 from U.S. Appl. No. 09/819,120.
Office Action mailed on Feb. 14, 2005

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Frameworks for loading and execution of object-based programs does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Frameworks for loading and execution of object-based programs, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Frameworks for loading and execution of object-based programs will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3672003

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.