Patents Examined by St. John Courtenay, III
-
Patent number: 6629152Abstract: A lock-free mechanism is provided for successfully passing messages between processes even if a process is preempted while sending or receiving a message. Messages are communicated between processes using a mailbox data structure stored in memory shared by the processes, without the use of locks or other mutual exclusion entities that would otherwise limit concurrent delivery and receipt of messages placed in the data structure. The data structure in the illustrative embodiment includes one or more message slots for storing messages placed in the data structure and a number of state variables for inserting messages into and removing messages from the message slots. A process sends or retrieves messages by manipulating the state variables using indivisible atomic operations. This ensures that a process cannot be preempted from message passing until it finishes executing the atomic instruction.Type: GrantFiled: June 29, 1998Date of Patent: September 30, 2003Assignee: International Business Machines CorporationInventors: Brent A. Kingsbury, Jean-Marie Christian Sulmont, Paul E. McKenney
-
Patent number: 6629123Abstract: An automatic distributed partitioning system (ADPS) intercepts function calls to unit activation functions that dynamically create application units, such as a component instantiation function. A system service library provides a unit activation function. An application program includes at least one function call to the unit activation function. The ADPS redirects the function call to instrumentation of the ADPS. In one technique, the ADPS uses inline redirection of the function call to the unit activation function.Type: GrantFiled: November 20, 1998Date of Patent: September 30, 2003Assignee: Microsoft CorporationInventor: Galen C. Hunt
-
Patent number: 6625638Abstract: A logical partition includes at least one dedicated logical processor and at least one shared logical processor. The dedicated processor is a different type of processor than the shared processor, and/or the dedicated processor executes a different dispatching procedure than the shared processor. The use of the shared processor automatically ramps up, as the arrival rate of requests forwarded to the logical partition increases. Furthermore, the use of, the shared processor automatically ramps down, as the arrival rate decreases.Type: GrantFiled: April 30, 1998Date of Patent: September 23, 2003Assignee: International Business Machines CorporationInventors: Jeffrey Paul Kubala, John Charles Nagy, Jeffrey Mark Nick, Ira Glenn Siegel
-
Patent number: 6621506Abstract: Methods and apparatus implementing a technique for applying suites of operations to selected data through a user interface. In response to a selection of data from a user through a user interface, the user interface creates a specifier object which binds implementations of operations provided by the user interface to the selected data according to the type of the data. In general, the technique includes receiving a selection of data having a type from a user through a user interface of a computer program running on a computer; recognizing the type of the selected data; and creating a specifier object according to the type, where the specifier object specifies an implementation of an operation.Type: GrantFiled: December 11, 1998Date of Patent: September 16, 2003Assignee: Adobe Systems IncorporatedInventor: A. Michael Burbidge
-
Patent number: 6618766Abstract: Mechanisms for correlating protocol events in a distributed application to the high level transactions that caused the protocol events. The mechanisms for correlating include a set of protocol sensors which are associated with the components of the distributed application. Each protocol sensor detects the protocol events generated by its corresponding component of the distributed application. The detection of protocol events by the protocol sensors is non-invasive in that it does not require recoding or recompilation of software components or redesign or modification of hardware components. The mechanisms for correlating also include a set of event correlators associated with the protocol sensors. Each event correlator uses the results of a prior training phase for the distributed application to determine which of a set of high level transactions in the distributed application caused the corresponding protocol events.Type: GrantFiled: September 29, 1999Date of Patent: September 9, 2003Assignee: Hewlett-Packard Development Company, LP.Inventor: Kave Eshghi
-
Patent number: 6618769Abstract: A method, computer program, signal transmission and apparatus pre-verify instructions in a module of a computer program one module-at-a-time. First it is determined whether checking an instruction in a first module which is loaded requires information in a referenced module different than the first module. If the information is required, a constraint for the referenced module is written without loading or otherwise accessing the referenced module. During linking it is determined whether a first module which is loaded has passed pre-verification one-module-at-a-time before linking. A pre-verification constraint on a constrained module is read, if any, if the first module has passed such verification. If any pre-verification constraint is read, the pre-verification constraint is enforced if the constrained module is already loaded.Type: GrantFiled: May 27, 1999Date of Patent: September 9, 2003Assignee: Sun Microsystems, Inc.Inventors: Gilad Bracha, Sheng Liang, Timothy G. Lindholm
-
Patent number: 6618768Abstract: The present invention provides a method in a computer system of integrating a compression system with an operating system. The computer system preferably comprises at least a memory device and one storage device. A user-supplied device driver is provided for storage devices that are not supported by the computer system to enable the computer system to communicate with the storage devices. In response to initialization of the computer system, the operating/compression system is loaded into the memory device and begins executing before any user-supplied device drivers are loaded into the memory device. Any compressed volume files located on the computer system are assigned drive letters at this time. When the user-supplied device drivers are loaded into the memory device, drive letters are assigned to the various storage devices. A drive letter conflict resolution scheme is provided to resolve conflicts that occur when the operating system attempts to assign a drive letter.Type: GrantFiled: July 24, 2002Date of Patent: September 9, 2003Assignee: Microsoft CorporationInventors: Benjamin W. Slivka, Charles A. Strouss, III, Scott D. Quinn
-
Patent number: 6615230Abstract: The computer system has a processing machine for receiving an electronic message including a request of a transaction from a network, transmitting an electronic message including results of the transaction to the network, and executing the transaction processes corresponding to transmitted/received electronic messages. The computer system also has a data machine for receiving the electronic message including the request of the data accesses from the network, transmitting the electronic message including the results of the data accesses to the network. The computer system also has a man-machine interface machine for transmitting the electronic message including the results of the transaction to the network, receiving the electronic message including the results of the transaction form the network. This computer system includes a network manager for managing access rights of respective users for accessing the processing machine and the data machine connected to the network.Type: GrantFiled: June 9, 1998Date of Patent: September 2, 2003Assignee: Fujitsu LimitedInventor: Takeshi Nishimura
-
Patent number: 6615279Abstract: An object oriented processor array includes a library of functional objects which are instantiated by commands through a system object and which communicate via a high level language. According to the invention, instantiated objects communicate directly with a script server which is programmed to react to data events generated by instantiated objects. One script server may serve several object oriented processor arrays, or an object oriented processor array may have a local script server. The object oriented processor array may be embodied in hardware, software, or a combination of hardware and software. Each functional object may include a discrete hardware processor or may be embodied as a virtual processor within the operations of a single processor. According to one embodiment, the object oriented processor array is formed on a single chip or on a single processor chip and an associated memory chip.Type: GrantFiled: January 7, 1998Date of Patent: September 2, 2003Assignee: IQ SystemsInventor: Jeffrey I. Robinson
-
Patent number: 6611877Abstract: An event aggregator allows an application program to receive notification of events generated by selected objects without registering as a listener for events with each object. The event aggregator has a registration list module that receives a registration request from the application program indicating from which object types the application program wants to receive notification of events, an object monitor that continually checks the computer system for objects and registers a listener with each object; and an event monitor that that notifies the application program if any listener receives notification of an event generated by an object type indicated by the registration request.Type: GrantFiled: June 30, 1998Date of Patent: August 26, 2003Assignee: Sun Microsystems, Inc.Inventors: Peter A. Korn, William D. Walker
-
Patent number: 6609159Abstract: A client-server system includes a new front end server which interposes itself between a prior (back end) server and its clients using an interposed dynamically-loaded library linked to the back end. The interposed library and front end can provide enhanced services without requiring reconfiguration of either the back end server or its clients. The front end can accept network connections on the same port as the back end server is programmed to. The interposed library intercepts standard network system calls by the back end and emulates their behavior by communicating with the front end. The front end can send file descriptors of either direct connections with clients, or of pipes for relaying requests and response from and to clients through the front end, to the interposed library for return to calls by the back end to accept connections.Type: GrantFiled: November 30, 1998Date of Patent: August 19, 2003Inventors: Semyon Dukach, Uri Guttman, Christopher M. Montgomery
-
Patent number: 6609158Abstract: Methods, configured media, and systems are provided for connecting disparate software components in a network or other computer system. A language adapter maps programming language constructs to a general object-oriented interface. An object model adapter maps the general object-oriented interface to specific object models such as the Java/RMI model or a CORBA model. The system dynamically wraps non-object components, such as scripts, in a object wrapper as needed to make them accessible through the language adapter and the object model adapter. In this manner, a language-vendor-independent bridge is provided between components written in different programming languages, and the components also gain access to objects written in object models favored by various vendors.Type: GrantFiled: October 26, 1999Date of Patent: August 19, 2003Assignee: Novell, Inc.Inventors: Carlos A. Nevarez, Chris Andrew
-
Patent number: 6606669Abstract: There is provided an information processing apparatus which is constructed by a host computer and a peripheral device connected to the host computer through a bidirectional interface and which inputs and outputs data between the host computer and the peripheral device through a device driver that corresponds to the peripheral device and is loaded in the OS of the host computer. An output device such as a printer which is controlled by the host computer has an identifying unit to identify the kind of OS of the host computer and a controller to output a device driver for controlling the device to the host computer on the basis of the identification result. The peripheral device has a memory in which the device driver corresponding to the peripheral device has been stored, the device driver in the memory is transferred to the host computer as necessary and is loaded into the OS of the host computer.Type: GrantFiled: December 5, 1995Date of Patent: August 12, 2003Assignee: Canon Kabushiki KaishaInventor: Koji Nakagiri
-
Patent number: 6604196Abstract: A method and apparatus for changing a component's mode based on its environmental context is disclosed. A component role fulfillment mechanism, as part of a component, changes the mode of a component based on its environmental context. The environmental context is defined by connections made by an assembler between components. Each component can support a variety of modes, but the component role fulfillment mechanism chooses one mode based on the environment and configures the component to fulfill only one mode.Type: GrantFiled: August 18, 1998Date of Patent: August 5, 2003Assignee: International Business Machines CorporationInventors: Paul Brian Monday, Bradley Scott Rubin
-
Patent number: 6601110Abstract: The present invention provides a system for using door translation to perform inter-process communication. The system enables a legacy application program to invoke traditional operations, such as READ and WRITE operations, which would otherwise be unavailable in a doors environment. Transparent to the client process, the system of the present invention translates the otherwise unavailable operation into a door call. Bound by its limitations and constraints, the server process performs a service in response to the door call. The system comprises a system call handler, such as a generic file system, which receives a file operation request from a client process. A door invocation handler, which includes a translator, determines the appropriate server process capable of performing a service corresponding to the operation request, translates the operation request into a door call to the server process, and invokes the door call.Type: GrantFiled: March 17, 1998Date of Patent: July 29, 2003Assignee: Sun Microsystems, Inc.Inventor: Tim P. Marsland
-
Patent number: 6601112Abstract: A method and computer program product for overcoming the inefficiencies associated with inter-buffer data transfers between separate processing components such as kernel mode drivers that are chained together. Provided is a standard mechanism for allocating and managing data buffers needed for processing data in a system, wherein multiple drivers are chained together using a standardized connection method in the connection pin instances. Drivers having different buffer requirements and capabilities may be queried and matched for easy data transition between the chained drivers requiring the least number of buffers and, hence the least expensive yet most efficient inter-buffer data transfer. Examples of buffer requirements include previous frame storage for adaptive processing, byte alignment, frame size, outstanding frames allowed, etc. The buffer requirements of an input connection pin instance may be queried by an application initializing the chained drivers.Type: GrantFiled: April 28, 1999Date of Patent: July 29, 2003Assignee: Microsoft CorporationInventors: Thomas J. O'Rourke, George H. J. Shaw, Bryan A. Woodruff
-
Patent number: 6601146Abstract: A method and apparatus for performing efficient interprocess communication (IPC) in a computer system. With this invention, a memory region called the IPC transfer region is shared among all processes of the system to enable more efficient IPC. The unique physical address of the region is mapped into a virtual address from each of the address spaces of the processes of the system. When one of the processes needs to transfer data to another of the processes, the first process stores arguments describing the data in the region using the virtual address in its address space that maps into the unique physical address. When the other or second process needs to receive the data, the second process reads the data from the second region using the virtual address in its memory space that maps into the unique physical address. With this invention, in most cases, control of the IPC transfer region occurs automatically without any kernel intervention.Type: GrantFiled: June 16, 1998Date of Patent: July 29, 2003Assignee: International Business Machines CorporationInventors: Marc Alan Auslander, David Joel Edelsohn, Hubertus Franke, Orran Yaakov Krieger, Bryan Savoye Rosenburg, Robert William Wisniewski
-
Patent number: 6601113Abstract: An object oriented system platform for a telecommunication system that provides subscriber services includes an upper layer containing applications in the form of base and supplementary functions providing base and supplementary services. This layer is implemented with base objects and extension objects. The base objects are object types implementing functions which may need extension in the future, each object type being designed for a particular task which can be performed with a minimum of coordination with other base objects. The extension objects are object types implementing extension functions which form extensions to the base functions and make it possible to add new services and modify and extend existing services without changing the software of a system that has already been implemented and supplied.Type: GrantFiled: June 8, 1998Date of Patent: July 29, 2003Assignee: Telefonaktiebolaget LM Ericsson (publ)Inventors: Jari Tapani Koistinen, Einar Wennmyr, Eui Suk Chung
-
Patent number: 6601114Abstract: A method, computer program, signal transmission and apparatus verify instructions in a module of a computer program during linking using pre-verification constraints with fully lazy loading. It is first determined whether a first module which is loaded has passed verification one-module-at-a-time before linking. If the first module has passed verification, a pre-verification constraint on a constrained module is read, if any. It is then determined if the constrained module is loaded, if any pre-verification constraint is read. If the constrained module is not already loaded, the pre-verification constraint is retained as a verification constraint.Type: GrantFiled: May 27, 1999Date of Patent: July 29, 2003Assignee: Sun Microsystems, Inc.Inventors: Gilad Bracha, Sheng Liang, Timothy G. Lindholm
-
Patent number: 6598069Abstract: An exemplary embodiment of the invention is a method for assigning resources in a system configurable into logical partition clusters. The method includes defining at least one logical partition cluster. A LPC name index record storing a LPC name index for each of a plurality of resources is provided. The LPC name index record is indexed by a resource identifier. A LPC name record storing at least one LPC name is also provided. At least one LPC name index points to a LPC name in the LPC name record and each LPC name identifies an LPC. A resource is assigned to a group in response to the LPC name index record and the LPC name record.Type: GrantFiled: September 28, 1999Date of Patent: July 22, 2003Assignee: International Business Machines CorporationInventors: William J. Rooney, Harry M. Yudenfriend, Jeffrey P. Kubala