Patent
1994-12-20
1997-09-16
Lee, Thomas C.
G06F 1100
Patent
active
056689993
ABSTRACT:
The present invention provides a verifier for use in conjunction with programs utilizing data type specific bytecodes for verifying the proper operation of the executable program prior to actual execution by a host processor. A verifier is provided which includes a virtual stack for temporarily storing stack information which parallels the typical stack operations required during the execution a bytecode program. The verifier also includes a stack snapshot storage structure having a snapshot directory and stack snapshot storage area for storing the state of the virtual stack at various points during program verification so as to assure proper stack manipulations by the source program. A two step source program verification process is provided for in which the source program is initially loaded into the verifier and a first pass source program evaluation is performed. During the first pass, the addresses of all source program target destinations resulting from conditional or un-conditional jumps are stored in sequential order in the stack snapshot directory. The source program is then reloaded and a verification of stack manipulations is performed using a virtual stack and the stack snapshot storage structure to verify proper stack manipulations by the source program. Upon completion, the source program may be interpreted, or compiled, or converted into another executable format as required by an individual user.
REFERENCES:
patent: 3878513 (1975-04-01), Werner
patent: 4521851 (1985-06-01), Trubisky et al.
patent: 4524416 (1985-06-01), Stanley et al.
patent: 5422992 (1995-06-01), Motoyama et al.
patent: 5446875 (1995-08-01), Ogisu et al.
Schauer, H., "Architektur und Implementierung eines PASCAL-Systems fur Mikrocomputer", Electronische Rechenanlagen, vol. 24 (1982), Jun., No. 3, pp. 108-117.
Perrott, R.H., et al., "A Supercomputer Program Development System", Software Practice & Experience 17 (1987) Oct., No. 10, pp. 663-683.
Wright, Andrew K., et al., "A Practical Soft Type System for Scheme", LISP 94--Jun. 1994 Orlando Florida, pp. 250-262.
Gosling, James, "Java Intermediate Bytecodes", ACM SIGPLAN Workshop on Intermediate Representations (IR '95), Jan. 1995, San Francisco, California, pp. 111-118.
"An Efficient Implementation of Self, A Dymamuically--typed Object Oriented Langage Based on Prototypes" ACM Press Oct. 1-6, 1989. by Craig Chamber et al.
"PostScript Langage Reference Manual"Addison-Werley Publiship Company, 1985.
Charles B. Duff "Desizning an efficient Langage" Aug. 1986 Byte.
Reznik, Assaf Dr. Dobb's Journal, v19, n13, p. 76(6).
Nov., 1994 "Character Simulation With Scriptx," A general-purpose frame work for dymanic Behavior.
Franks, Neville, Dr. Dobb's Journal. v16, n9, p. 34(6) Sep. 1991. "Adding an extension Language to your Software: the little Language interface".
David Betz, Dr. Dobb's Journal, v16, n9, p. 26(8) Sep., 1991 "Your own tiny object-oriented Language; C++? Smalltalk? What about Bob?".
David Betz. Dr. Dobb's Journal, v18, n11, p. 74(4). Oct., 1993. "Dave's Recycled oo Language:Dool over a little language that sports multiple inheritance".
David Betz. Byte, Nov. 1988, p. 419; vol. 13, No. 12 "Embedded Language; Extalk, allows users to extend to capabilities your application program".
Corinna Kinchin, Exe, v6, n1, p. 66(5), Jun. 1991. "Postscript: P.S C+'s Programming".
Cardell. L., Conference 6-10 May 1985. "The Amber Machine".
Seybold Report on desktop Publishing (v5, n7 P(9) (1). Mar. 4, 1991. "a postscript backgrounder".
"Small talk--80, The Language and its implementation" by Adele Goldberg & David Robson addison-Wesley Publishing Company,1983.
"ACM Sig PLAN Notices", vol. 30, No. 3, Mar. 1995. Sigplan Workshop on Intermediate Representations (IR'95, Jan. 22, 1995).
"The VLISP Verified Scheme System", p. 41-62. an international Journal, 8, 33-100 (1995), 1995 Kluwer. Academiz Publisher Boston.
"Nil: An Intergrated Language and System for distributed Programming" by Robert E. Strom, SigPlan 18n Symposium on Programming Language tissues in Software Systems, Jun. 1983.
"Hermes a language for distributed Computing" by Robert E. Strom et al. Prentice Hall, 1991.
"Do Programers need Seat belts" by Dan Yellin.
"High-Level Language for Programming Distributed Systems" J.S. Auereach et al, 1992. IEEE. IBM T.J. Watsm Research Center.
"Hermes Language Experience" Willard Korfhage et al, software-practice and experience, vol. 25(4) 389-402. 15 Nov. 1993.
Lee Thomas C.
Park Alice Y.
Sun Microsystems Inc.
Williams Gary S.
LandOfFree
System and method for pre-verification of stack usage in bytecod does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and method for pre-verification of stack usage in bytecod, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for pre-verification of stack usage in bytecod will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-226026