Patents by Inventor Steven J. Munroe
Steven J. Munroe 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: 6230311Abstract: The present invention provides an object-oriented disabling mechanism which selectively disables object methods. The object-oriented disabling mechanism prevents the selected methods from being called on an object by other programs or processes via various alternative embodiments. A first preferred embodiment of the object-oriented disabling mechanism works in conjunction with a plurality of method tables to restrict method calls on an object. An alternative preferred embodiment of the object oriented disabling mechanism works in conjunction with a read flag and a write flag to define which methods can be called on an object. Another alternative preferred embodiment of the object oriented disabling mechanism uses software “locks” and a lock conflict matrix associated with the object to determine which methods can be called on an object.Type: GrantFiled: June 12, 1998Date of Patent: May 8, 2001Assignee: International Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Erik E. Voldal
-
Patent number: 6223344Abstract: The present invention provides a method and apparatus for versioning persistent objects which updates the version of a persistent object by splitting the persistent object up into two sections, a header section and a data section. The header section has a data pointer to the data section. The header section determines the object identity of the persistent object and always remains in place. Since the header section of the object always remains intact, the object identity of the persistent object never changes. When updating the version of the persistent object, the persistent object versioning mechanism simply updates the pointer in the header section of the object to reference a newly created data section. Once the persistent object versioning mechanism updates the data pointer to reference the new data section, existing objects can reference the new version of the persistent object using the original object identity of the persistent object.Type: GrantFiled: June 11, 1998Date of Patent: April 24, 2001Assignee: Internationl Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Erik E. Voldal
-
Patent number: 6209128Abstract: According to the present invention, an apparatus and method for providing access to multiple object versions allows the system administrators to control which version of a given object is referenced by existing related objects. By providing an option for the system user to select and access different object versions, object upgrade policies can be flexible and accommodate the various needs of different object-oriented systems. The object versioning mechanism of the present invention provides several different options when modifying an existing object to create a new version. The various embodiments of the present invention provide a versioning mechanism to manage version updates for objects in an object-oriented system. The versioning mechanism disclosed herein implements the methods of the present invention by making a copy of an existing object whenever a new version of the existing object is to be introduced into an object-oriented system.Type: GrantFiled: June 5, 1998Date of Patent: March 27, 2001Assignee: International Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Erik E. Voldal
-
Patent number: 6192368Abstract: According to the present invention, an object change manager includes methods afterCreation( ), beforeDeletion( ), beforeChange( ) and afterChange( ) that may be invoked when an object is changed. The object change manager automatically updates all data structures, such as indexes and has tables, that correspond to the object being changed when one of these methods is called. The object change manager is an extensible framework that allows a programmer to define custom change management environments. The object change manager of the preferred embodiments is a portion of code that automatically propagates changes to objects to their corresponding data structures in a way that is transparent to the programmer, without requiring excessive overhead in the object infrastructure code.Type: GrantFiled: February 11, 1998Date of Patent: February 20, 2001Assignee: International Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Robert Eugene Westland
-
Patent number: 6092079Abstract: A second object is created which is an instance of a first class. The data from the first object is copied into the second object. The method table pointer of the first object is then changed to the method table of the second class. The data section of the first object is then reallocated according to the data requirements of the second class. The data in the second object is then converted to data in the first object. The resultant first object has both methods and data updated to the second class without passivating the object.Type: GrantFiled: April 7, 1998Date of Patent: July 18, 2000Assignee: International Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Erik E. Voldal
-
Patent number: 6044380Abstract: An apparatus and method for updating objects sets up morphing on affected classes, and the actual morph of each object is performed the first time the object is touched, i.e., the first time a method on the object is invoked after the morph is set up. Morphing objects on first touch allows an application that requires a new object configuration to be loaded and executed immediately, because new methods and/or data will become available when an instance is first touched. The apparatus and method of the invention set up morphing on first touch by overriding methods on the old class with morph and retry methods that first perform the morph of the object, then route the method call to the newly morphed object. The first touch of an object to be updated thus updates (or morphs) the object, and each subsequent access will be to the updated object.Type: GrantFiled: February 17, 1998Date of Patent: March 28, 2000Assignee: International Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Erik E. Voldal
-
Patent number: 6029206Abstract: In an object-oriented or object-based computer system, object methods are routed to users (e.g., client programs) after automatically performing supervisory functions. Examples of suitable supervisory functions include authorization checking and locking. One suitable way to automatically perform the supervisory functions is to provide a call method instruction in the operating system that automatically performs these supervisory functions when a user invokes the object method using the instruction. In this manner, the operating system can assure that the user calling the object method has sufficient authority and lock to access the object method. In addition, the method routing mechanism has the ability to forego authorization checking and locking for objects that are unprotected, and may perform abbreviated authorization checking and locking if the operating system determines from local knowledge that a user is currently authorized to and locked on the called object.Type: GrantFiled: January 31, 1996Date of Patent: February 22, 2000Assignee: International Business Machines CorporationInventors: John C. Endicott, Steven L. Halter, Steven J. Munroe, Erik Edward Voldal
-
Patent number: 6023704Abstract: An object identity swapper dynamically updates the configuration of an object by taking a first object, instantiating a new second object, swapping the identities of the first and second objects, and reading and converting the state data of the old object (now the second object) into the new object (now the first object). The result is that the first object identity doesn't change, but its configuration is updated without passivating the object.Type: GrantFiled: January 29, 1998Date of Patent: February 8, 2000Assignee: International Business Machines CorporationInventors: Scott Neal Gerard, Steven Lester Halter, Steven J. Munroe, Erik E. Voldal
-
Patent number: 5974428Abstract: According to a preferred embodiment of the present invention, a class versioning and mapping system allows a user to request a desired class without knowing which class version is the most recent or correct version for the desired class. The class versioning and mapping system uses a version mapping mechanism to cross reference the requested class, select the most recent or best version of the requested class, and then return an object to the user that belongs to the selected class. This feature allows the system to have multiple versions of the same class on-line at the same time and use objects from different versions of the same class in a way that is transparent to the user. Therefore, by using a preferred embodiment of the present invention, a client object can specify or request that an object be created without having any knowledge of the actual class version or version(s) that are available.Type: GrantFiled: August 29, 1997Date of Patent: October 26, 1999Assignee: International Business Machines CorporationInventors: Scott N. Gerard, Steven J. Munroe
-
Patent number: 5581765Abstract: An object pointer data structure for efficiently combining an object identifier and an object address for use in object-oriented programming systems. An object address is a value that allows a client application or process to conduct high-performance operations on an object in the client's local virtual address space. An object identifier is a value that can be used to uniquely identify an object for the lifetime of that object across some defined domain, such as an entire universe of computer systems. The data structure of this invention defines an object pointer that is larger than the object address but smaller than the combination of the object identifier and object address. The truncated object pointer structure preserves all information from both object address and object identifier by forcing a portion of the local object address in each address space to be equal to a portion of the invariant object identifier.Type: GrantFiled: August 30, 1994Date of Patent: December 3, 1996Assignee: International Business Machines CorporationInventors: Steven J. Munroe, Abolfazi Sirjani, Erik E. Voldal
-
Patent number: 5404525Abstract: OOP environments comprise composite data structures and internal mechanisms for manipulating those structures. The structures are used to allow a user to realize the power of OOP. Hence, the layout of these structures, the way in which the structures inter-relate, and the manner in which they are built and used are all critical to the utility of a particular OOP environment. It is no surprise, then, that manufacturers and suppliers of OOP environments are constantly striving to design composite data structures and internal mechanisms which maximize user productivity. The internal mechanisms and structures that make up the present invention are collectively referred to as the New Object Model (NOM). The composite data structures and organization of the NOM OOP environment provide significant benefits that are not provided by the environments of the prior art.Type: GrantFiled: September 30, 1992Date of Patent: April 4, 1995Assignee: International Business Machines CorporationInventors: John C. Endicott, Steven J. Munroe, Robert P. Resch
-
Patent number: 5280614Abstract: In an object-based computer system, each object is contained in, and each task executes in, a protection domain. Domains exist at several hierarchical domain levels, some levels having multiple discrete domains, while others have one common domain. A task may access an object if the domain in which the task is executing is the same as the domain containing the object, or if the domain in which it is executing occupies a higher hierarchical domain level than the domain containing the object. Each object includes a domain attribute, which is a numerical value defining the domain in which it is contained. The domain attribute of the currently executing task is stored in a domain register. When an attempt is made to access data within an object, the domain attribute of the object is compared with the domain attribute stored in the domain register. If the access conditions are met, access is permitted.Type: GrantFiled: August 21, 1990Date of Patent: January 18, 1994Assignee: International Business Machines CorporationInventors: Steven J. Munroe, James G. Ranweiler, George D. Timms, Jr.