Patents by Inventor Antero K. P. Taivalsaari
Antero K. P. Taivalsaari has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 7831965Abstract: One embodiment of the present invention provides a system that resolves references in an in-place execution file for a platform-independent virtual machine into physical addresses. During operation, the system receives an in-place execution file in which references have been replaced with in-place encoded metadata specifying attributes of the references. The system then resolves a reference by obtaining in-place encoded metadata for the reference from a location in the in-place execution file, using the in-place encoded metadata to determine an address of an associated referent, and then replacing the in-place encoded metadata at the location in the in-place execution file with the address of the referent.Type: GrantFiled: August 12, 2004Date of Patent: November 9, 2010Assignee: Oracle America, Inc.Inventors: William F. Pittore, Antero K. P. Taivalsaari
-
Patent number: 7603665Abstract: One embodiment of the present invention provides a system that facilitates loading of an in-place executable file into a virtual machine. The system operates by loading the in-place executable file into the virtual machine, where the in-place executable file contains internal pointers that point to memory locations within the in-place executable file, and a target memory address that specifies a target location in memory where the in-place executable file is configured to be loaded. The system then determines an actual memory address at which the in-place executable file is actually loaded. If the actual memory address and the target memory address are different, the system generates an offset value, which is the difference between the actual memory address and the target memory address. Finally, the system adjusts each internal pointer within the in-place executable file by the offset value so that the internal pointers point to intended locations inside the in-place executable file.Type: GrantFiled: June 29, 2004Date of Patent: October 13, 2009Assignee: Sun Microsystems, Inc.Inventors: Antero K. P. Taivalsaari, William F. Pittore
-
Patent number: 7574705Abstract: One embodiment of the present invention provides a system that facilitates efficiently resolving symbolic references in a virtual machine to support in-place execution. During operation, the system loads an in-place executable file into the virtual machine, and receives a pointer that points to an unresolved symbol value in the in-place executable file. This unresolved symbol value includes an offset value that points to a subsequent unresolved symbol value in a chain of unresolved symbol values within the in-place executable file, and a token value that can be used to look up a corresponding resolved reference value in an unresolved symbol table. The system then uses the token value to look up the corresponding resolved reference in the unresolved symbol table, and replaces the unresolved symbol value with the corresponding resolved reference.Type: GrantFiled: June 29, 2004Date of Patent: August 11, 2009Assignee: Sun Microsystems, Inc.Inventors: Antero K. P. Taivalsaari, William F. Pittore, Bernd J. W. Mathiske
-
Patent number: 7328432Abstract: One embodiment of the present invention provides a system that facilitates performing proximity-based addressing in a platform-independent virtual machine. During execution of a program on the platform-independent virtual machine, the system receives an instruction and a parameter associated with the instruction that can be used to generate a reference to a program element associated with the instruction. Next, the system examines information encoded within the parameter to determine a proximity of the reference, and then uses the parameter to generate the reference to the program element, wherein the proximity of the reference determines how the reference is generated from the parameter.Type: GrantFiled: June 2, 2003Date of Patent: February 5, 2008Assignee: Sun Microsystems, Inc.Inventor: Antero K. P. Taivalsaari
-
Publication number: 20040243999Abstract: One embodiment of the present invention provides a system that facilitates performing proximity-based addressing in a platform-independent virtual machine. During execution of a program on the platform-independent virtual machine, the system receives an instruction and a parameter associated with the instruction that can be used to generate a reference to a program element associated with the instruction. Next, the system examines information encoded within the parameter to determine a proximity of the reference, and then uses the parameter to generate the reference to the program element, wherein the proximity of the reference determines how the reference is generated from the parameter.Type: ApplicationFiled: June 2, 2003Publication date: December 2, 2004Inventor: Antero K. P. Taivalsaari
-
Patent number: 6446084Abstract: One embodiment of the present invention provides a method for increasing performance of code executing on a platform-independent virtual machine. The method operates by receiving a request to resolve an entry in a symbol table at run-time, wherein resolving the entry requires multiple lookups into the symbol table. It next determines if the entry has previously been resolved. If so, the system returns a direct pointer to a runtime structure associated with the entry, which was returned during a previous resolution of the entry. If not, the system resolves the entry through multiple lookups into the symbol table to produce a direct pointer to the runtime structure, and replaces the entry with the direct pointer. In a variation on the above embodiment, the symbol table assumes the form of a constant pool within an object-oriented class file defined within the JAVA programming language.Type: GrantFiled: September 22, 1998Date of Patent: September 3, 2002Assignee: Sun Microsystems, Inc.Inventors: Nik Shaylor, Antero K. P. Taivalsaari
-
Patent number: 6433798Abstract: One embodiment of the present invention provides a system for viewing objects on a display that allows a user to scroll through the objects by varying a non-positional display attribute of the objects. This non-positional display attribute may include attributes such as transparency, fadedness and size. The system operates by receiving an intrinsic value for an object, which specifies a value for a display attribute associated with the object. The system also receives a reference value for the display attribute against which intrinsic values for objects are compared. This reference value may be received from a user through a scroll bar that is manipulated by the user. The system uses the intrinsic value and the reference value to compute a display value for the object. Next, the object is displayed using the display value to specify the non-positional display attribute for the object.Type: GrantFiled: April 30, 1999Date of Patent: August 13, 2002Assignee: Sun Microsystems, Inc.Inventors: Randall B. Smith, Antero K. P. Taivalsaari
-
Patent number: 6307562Abstract: One embodiment of the present invention provides a system for viewing a plurality of objects on a graphical display. The graphical display includes space for displaying objects and a sink that contains objects that are not visible on the graphical display. The system operates by receiving a command from a user of the graphical display. When the command is a compress command, if an object is inside the sink, the system moves the object a level deeper into the sink. If the object is located outside the sink on the graphical display, the system moves the object closer in a radial direction towards the sink. If the object moves very close to the sink, the object leaves the graphical display and enters the sink. When the command is an expand command, if the object is located inside the sink, the system moves the object a level higher in the sink. If the object is already at a highest level of the sink, the object leaves the sink and enters the graphical display at a location near the sink.Type: GrantFiled: March 15, 1999Date of Patent: October 23, 2001Assignee: Sun Microsystems, Inc.Inventor: Antero K. P. Taivalsaari
-
Patent number: 6279148Abstract: One embodiment of the present invention facilitates low-level systems programming in dynamic, “pointer-safe” programming languages, which disallow arbitrary references through pointers. It does so by avoiding the creation of object instances in the traditional fashion. Rather, a large heap is defined to store dynamically allocated data objects, and explicit memory management operations are implemented in order to allocate and deallocate memory from the heap. Traditional object pointers are replaced by indices to the heap. The described technique allows the bypassing of traditional object allocation, thus making object allocation static from the viewpoint of the pointer-safe programming language—with the exception of the large array that is allocated to serve as the heap. Since the new memory system is implemented on top of an existing automatic memory system, varying degrees of automatic and manual memory management are possible.Type: GrantFiled: October 13, 1998Date of Patent: August 21, 2001Assignee: Sun Microsystems, Inc.Inventors: Antero K. P. Taivalsaari, David M. Ungar
-
Patent number: 6275985Abstract: One embodiment of the present invention provides a system that facilitates developing an application that implements garbage collection (such as a virtual machine) using a first compiler and then compiling the application with a second compiler that provides support for efficient garbage collection. The system operates by developing the application using a first compiler and proxy objects, so that during execution of the application, pointers within the system stack point indirectly to data objects through proxy objects. These proxy objects are used during the garbage collection process to identify data objects that are referenced by the pointers within the system stack. Next, the system provides a second compiler that produces stack maps that identify pointers in the system stack. This allows the garbage collection process to identify objects referenced by the pointers in the system stack without using proxy objects.Type: GrantFiled: December 17, 1998Date of Patent: August 14, 2001Assignee: Sun Microsystems, IncInventors: David M. Ungar, Antero K. P. Taivalsaari