Electrical computers and digital processing systems: virtual mac – Virtual machine task or process management
Reexamination Certificate
2001-03-27
2009-06-02
An, Meng-Al T. (Department: 2195)
Electrical computers and digital processing systems: virtual mac
Virtual machine task or process management
C712S200000, C717S100000
Reexamination Certificate
active
07543288
ABSTRACT:
Techniques for implementing virtual machine instructions suitable for execution in virtual machines are disclosed. The inventive virtual machine instructions can effectively represent the complete set of operations performed by the conventional Java Bytecode instruction set. Moreover, the operations performed by conventional instructions can be performed by relatively fewer inventive virtual machine instructions. Thus, a more elegant, yet robust, virtual machine instruction set can be implemented. This, in turn, allows implementation of relatively simpler interpreters as well as allowing alternative uses of the limited 256 (28) Bytecode representation (e.g., a macro representing a set of commands). As a result, the performance of virtual machines, especially, those operating in systems with limited resources, can be improved by using the inventive virtual machine instructions.
REFERENCES:
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: 5542059 (1996-07-01), Blomgren
patent: 5815718 (1998-09-01), Tock
patent: 5838980 (1998-11-01), Guillen et al.
patent: 5872978 (1999-02-01), Hoskins
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: 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 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: 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: 6477702 (2002-11-01), Yellin et al.
patent: 6496871 (2002-12-01), Jagannathan 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: WO99/18484 (1999-04-01), None
patent: WO99/31576 (1999-06-01), None
patent: WO99/61981 (1999-12-01), None
patent: WO01/22213 (2001-03-01), None
patent: WO02/41145 (2002-05-01), None
patent: WO02/077807 (2002-10-01), None
Lindholm et al, “The Java™ Virtual Machine Specification”, (Sep. 1996), Sun Microsystems, Inc., Chapters 1-10 (173 pp.).
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 Format), Release 1.0 Achievements, Sep. 29, 2000,” J Consortium Jeff Working 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.
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.
John Meyer & Troy Downing, “Java Virtual Machine,” 1997, O'Reilly & Associates, Inc. pp. 46, 56-57, 74-75, 389 and 391.
Microsoft Press Computer Dictionary Third Edition, pp. 294-295.
Chang et al., “EJVM: an economic Java run-time environment for embedded devices,” Software Practice & Experience, 2001, John Wiley & Sons, Ltd., vol. 31, pp. 129-146. XP-000987539.
Gosling et al., “The Java™ Language Specification”, Aug. 1, 1996, pp. 215-236. XP 002042923.
Zhenyu Qian, “A formal Specification of Java™ Virtual Machine Instructions,” Technical Report, University Bremen; Nov. 1997, pp. 1-32. XP-002255760.
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.
Examination Report dated Aug. 8, 2005 from the corresponding GB Application No.: GB0324568.5, 5 pages.
Patrice Pominville, “Annotating Java Bytecode,” Project Report, McGill University, Online, April 2000, pp. 1-7. XP-002254149.
Yourst, “Inside Java Class Files,” Dr. Dobbs'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 Edition, Apr. 1999, pp. 117-132. XP-002254151.
Dahm, Markus, “Byte Code Engineering”, 1999, Java Information Tag, Proceedings of JIT' 99: Java-Informations'Tage, Dusseldorf, Germany, vol. 20-21, pp. 267-277, XP-002262007.
Bill Venners, “How the Java virtual machine handles method invocation and return” Java World, Jun. 1997, pp. 1-10.
Clausen et al., “Java Bytecode Compression for Low-End Embedded Systems,” May 2000, ACM.
Goldberg, “A specification of java loading and bytecode verification,” ACM, pp. 49-58, 1998.
Chang et al. “Type based verification of assembly language for compiler degugging,” ACM TLDI, pp. 91-102, Jan. 2005.
Qian et al., “A formal specification of Java class loading,” ACM OOPSLA, pp. 325-336, 2000.
Krintz et al., “Reducing transfer delay using java class file splitting and prefetching,” ACM OOPSLA, pp. 276-291 Nov. 1999.
Chilimbi et al., “Cache-Conscious Structure Definition”, p. 13-24, 1999 ACM.
Nicol et al., “Empirical Study of parallel Trace-Driven LRU Cache Simulators”, p. 166-169, 1995 IEEE.
Office Action of Aug. 2, 2004 by Examiner Ali for U.S. Appl. No. 09/920,097, entitled “Enhanced Virtual Machine Instruction.s”.
Sokolov Stepan
Wallman David
An Meng-Al T.
Beyer Weaver & Thomas LLP
Sun Microsystems Inc.
Truong Camquy
LandOfFree
Reduced instruction set for Java virtual machines does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Reduced instruction set for Java virtual machines, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Reduced instruction set for Java virtual machines will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-4148029