Patents Examined by Majid Banankhah
  • Patent number: 7032073
    Abstract: Cache apparatus, including first and second cache memories, coupled to receive and hold context information from an external memory with respect to tasks, each task activated by one or more activating events, so that the context information is available for access by a processor in performing the tasks. The cache apparatus further includes a mapper, which is coupled to receive a classification of the tasks as fast and slow tasks. The mapper is adapted, upon receipt of one of the activating events for one of the fast tasks to be performed by the processor, to cause the context information with respect thereto to be received in the first cache memory, and upon receipt of one of the activating events for one of the slow tasks to be performed by the processor, to cause the context information with respect thereto to be received in the second cache memory.
    Type: Grant
    Filed: April 30, 2002
    Date of Patent: April 18, 2006
    Inventors: Shay Mizrachi, Rafi Shalom, Amit Oren
  • Patent number: 7028299
    Abstract: An embodiment of the present invention is a task manager to manage tasks in a multiprocessor system. A task table stores task entries corresponding to tasks executed by at least one processor. A block allocation circuit allocates blocks of the cache memory used by the tasks. A task coordinator coordinates the tasks in response to a task cycle issued by a processor.
    Type: Grant
    Filed: June 30, 2000
    Date of Patent: April 11, 2006
    Assignee: Intel Corporation
    Inventor: Stephen S. Chang
  • Patent number: 7028302
    Abstract: A system and method for automatically tuning a multiprocessor (MP) computer system having a set of processors, associated memory resources, interrupt sources and interrupt service routines (ISRs). Upon initialization of the MP system, the ISRs are assigned to the processors in a particular fashion. Thereafter, runtime statistics associated with the execution of the ISRs by the processors are monitored periodically. Where there is an imbalance with respect to a condition relating to the runtime statistics, the ISRs are dynamically re-assigned to the processors based on the runtime statistics in accordance with an optimization technique.
    Type: Grant
    Filed: April 24, 2002
    Date of Patent: April 11, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Chris J. Kiick
  • Patent number: 7024672
    Abstract: Methods, systems, and computer program products that, by defining a common interface, allow for a single implementation of operations common to both kernel mode and user mode processing, relative to a hardware adapter. Corresponding kernel mode and user mode implementations of the operations are provided. For a given process, a call to the common interface is mapped to the kernel mode implementation for kernel mode processes and to the user mode implementation for user mode processes. The mapping may be performed at runtime or may be static. The common operation may provide a user mode process direct access to a hardware adapter, such as for sending and receiving information, without switching to kernel mode. A kernel mode implementation for operations unique to kernel mode processing, such as specifying security parameters for the hardware adapter to enforce, or initiating and terminating communication through the hardware adapter, also may be provided.
    Type: Grant
    Filed: June 26, 2002
    Date of Patent: April 4, 2006
    Assignee: Microsoft Corporation
    Inventors: Robin L. Callender, Narayanan Ganapathy
  • Patent number: 7020877
    Abstract: A method to distribute periodic task workload in an information handling system includes distributing processing tasks using a tick interval. A first execution trigger in a service variable may be set at a first multiple of a predetermined tick interval. A second execution trigger may be set at a second multiple of the predetermined tick interval. The second multiple may be greater than and staggered from the first multiple, such that the first and second execution triggers may not both be set during the same tick interval. The service variable may be interrogated at the predetermined tick interval. A first processing task associated with the first execution trigger may be executed in response to detecting that the first execution trigger has been set. A second processing task associated with the second execution trigger may be executed in response to detecting that the second execution trigger has been set.
    Type: Grant
    Filed: May 20, 2002
    Date of Patent: March 28, 2006
    Assignee: Dell Products L.P.
    Inventor: James E. Dailey
  • Patent number: 7020706
    Abstract: A system and method updates multiple servers automatically without taking all of the multiple servers off-line at the same time. The system and method selects a group of servers, takes the group off-line, updates the group taken off-line, and then brings on-line those members of the group that were on-line prior to the update and for which the update was installed successfully.
    Type: Grant
    Filed: June 17, 2002
    Date of Patent: March 28, 2006
    Assignee: BMC Software, Inc.
    Inventors: Terry Cates, Bruce Wang, Sami Shaio
  • Patent number: 7016891
    Abstract: A system and method is described which provides for context checking of an operating environment. A context manager controls the execution of context checks requested by applications or processes. In one embodiment, the context check modules are defined as self-contained modules located in a database. When the data base is opened, these modules are loaded and registered with the context manager. Upon occurrence of certain user actions, the context manager will issue an event to cause the appropriate modules to perform a context check of certain context of the environment. The resulting context information is stored in memory by the context manager and provided to the applications by the context manager when needed. One advantage is that the context checks performed can be changed simply by adding or deleting modules from the database.
    Type: Grant
    Filed: June 26, 2002
    Date of Patent: March 21, 2006
    Assignee: Apple Computer, Inc.
    Inventor: John Richard Powers, III
  • Patent number: 7007280
    Abstract: An assembly for processing a service used by a component-based application is provided by receiving a request from the component-based application that specifies a role name symbolizing the task, accessing an assembly data-structure corresponding to the role name and having metadata information specifying a number of components used to perform the service and interfaces used to connect each component with other components, loading a component identified in the assembly data-structure into an area for processing, connecting an interface associated with the loaded component to other components according to the meta-data information in the assembly data-structure, and performing the requested service using the loaded component to process data and the interface to pass information from the loaded component to other components.
    Type: Grant
    Filed: April 30, 2001
    Date of Patent: February 28, 2006
    Assignee: Adobe Systems Incorporated
    Inventor: Richard A. Dermer
  • Patent number: 7003775
    Abstract: An application watchdog, comprising a dedicated watchdog counter in the hardware layer and a watchdog driver operating in the kernel mode layer of the computer operating system. The driver comprises a system thread configured to monitor a plurality of designated user applications operating in the user mode of the operating system and a message passing interface for receiving periodic signals from each of the user applications. The driver also uses an interface for transmitting timer reset commands to the dedicated watchdog counter. If the system thread receives a message from each of the designated user applications within an allotted period of time, the watchdog driver sends a timer reset command to the dedicated watchdog counter. Otherwise, the dedicated watchdog counter fails to receive the reset command and subsequently issues a system reset command. Early warning signals may be issued prior to system reset to alert system management.
    Type: Grant
    Filed: August 17, 2001
    Date of Patent: February 21, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: John Lacombe, Theodore F. Emerson
  • Patent number: 7003773
    Abstract: A system dynamically generates interfaces on demand during runtime execution of an application containing a plurality of objects. A user object generates a request for an interface of a service object. The service object, if the interface is not available, generates an adapter request and transmits same to an adapter manager. The adapter manager selects an interface adapter based on the adapter request from a library of interface adapters or aggregates a composite adapter and transmits the obtained interface adapter to the service object. The service object enables access from the user object based on the received interface adapter.
    Type: Grant
    Filed: March 26, 2002
    Date of Patent: February 21, 2006
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael Hoennig, Markus Meyer
  • Patent number: 6996826
    Abstract: A method in a computer system for accessing Microsoft Component Object Model (“COM”) objects of varying thread types from a Java-based program. The computer system has a Java virtual machine (“VM”) that executes statements of the Java program and that executes in a multithreaded process. When executing a statement of the Java-based program to instantiate a COM object, the system creates a wrapper object. When the COM object is not thread-safe, the system requests an appropriate thread to instantiate the COM object and stores an identifier of the thread in the wrapper object. When the COM object is thread-safe, the system instantiates the COM object from the current thread and stores an indication in the wrapper object that the COM object can be accessed from any thread. When executing a statement of the Java-based program to invoke a method of the COM object, the system requests the thread identified in the wrapper object to invoke the method of the COM object.
    Type: Grant
    Filed: December 26, 2001
    Date of Patent: February 7, 2006
    Assignee: Microsoft Corporation
    Inventor: Atsushi Kanamori
  • Patent number: 6993761
    Abstract: One embodiment of the present invention provides a system for verifying type safety of an application snapshot. This application snapshot includes a state of an executing program that is moved from a first computing device to a second computing device across a network in order to continue execution on the second computing device. The system operates by receiving the application snapshot from the first computing device on the second computing device, wherein the application snapshot includes a subprogram, an operand stack, and a point of execution. The system then examines the application snapshot to identify one or more subprograms and the point of execution within the subprograms. Next, the system examines the subprogram to determine an expected structure of the operand stack at the point of execution.
    Type: Grant
    Filed: September 28, 2000
    Date of Patent: January 31, 2006
    Assignee: SUN Microsystems, Inc.
    Inventors: Grzegorz J. Czajkowski, Mario I. Wolczko
  • Patent number: 6988139
    Abstract: In a distributed computing environment, a queue of jobs is maintained on a job database, along with parameters for each of the computing devices available to process the jobs. A task model defining the job is provided for generating a plurality of tasks comprising each job. The tasks are maintained in a tuple database, along with the status of each task, indicating when each task is ready for processing. As a computing device becomes available to process a task, its capabilities are matched with those required to complete tasks that are ready for processing and the highest priority task meeting those requirements is assigned to the computing device to be processed. These steps are repeated until all the tasks required for the job have been processed, or the job is otherwise terminated.
    Type: Grant
    Filed: April 26, 2002
    Date of Patent: January 17, 2006
    Assignee: Microsoft Corporation
    Inventors: Robert B. Jervis, Xavier L. Bocken, Chad R. Shurtz
  • Patent number: 6988268
    Abstract: A new method and framework for implementing network protocol processing utilizing a combination of application threads and a dedicated thread to process IO completions in a completion queue that automatically detects and adjusts thread priorities to alleviate manual intervention. According to the present invention, as data transfer operations are completed by the network interface, completion information identifying the data transfer operations is posted on the completion queue. The completion information is read and processed by a combination of application and dedicated threads running in the system. A method monitors performance of the system to detect whether poor processor utilization or excessive context switches occurs, in which case a different thread is used to process the completion information.
    Type: Grant
    Filed: April 30, 2002
    Date of Patent: January 17, 2006
    Assignee: Microsoft Corporation
    Inventor: Khawar M. Zuberi
  • Patent number: 6978463
    Abstract: A policy based software component system (24) for modifying software component behavior includes an interceptor (34) for intercepting an interface event being transmitted from a software application (14) comprising software components (20, 22). A rules database (32, 40) stores software component modifying rules, and an adaptor (35) modifies the interface event based on the software component modifying rules stored in the rules database (32, 40). A policy engine (36) attempts to match the interface event with the software component modifying rules stored in the rules database (32, 40), and subsequently coordinates the modification of the interface event by the adaptor (35) when the policy engine (36) matches the interface event with at least one of the software component modifying rules stored in the rules database (32, 40).
    Type: Grant
    Filed: April 23, 2002
    Date of Patent: December 20, 2005
    Assignee: Motorola, Inc.
    Inventor: John Anthony Yanosy
  • Patent number: 6978459
    Abstract: A system and method process data elements on multiple processing elements. A first processing element processes a task. A second processing element, coupled to the first processing element, is associated with a task. The first processing element sends a critical-section end signal to the second processing element while processing the task at the first processing element. The second processing element resumes the task in response to receiving the critical-section end signal.
    Type: Grant
    Filed: April 13, 2001
    Date of Patent: December 20, 2005
    Assignee: The United States of America as represented by the Secretary of the Navy
    Inventors: Jack Bonnell Dennis, Joel Zvi Apisdorf, Sam Brandon Sandbote
  • Patent number: 6973560
    Abstract: A fault tolerant software environment, in which various program components (e.g., portions of computer programs, applications, etc) are objectized into entities represented by “codons.” This allows for improper syntax to occur, enabling, for example, combinatorial operations such as genetic programming. The present invention also contemplates such features as the ability to probabilistically execute individual codons, to switch between treating information as executable code or as data (or passing over it), provides that the individual codons can be tagged so that additional information can be associated with them, and provides for tagging of the stack.
    Type: Grant
    Filed: May 12, 2000
    Date of Patent: December 6, 2005
    Assignee: Lamarck, Inc.
    Inventors: Todd M. Rice, Gordon E. Bennett
  • Patent number: 6973653
    Abstract: A method for providing optimal performance in an electronic device comprises at least one resource characterization that includes resource requirements for executing a requested process. An allocation manager may then compare the resource requirements for the requested process to the currently-available device resources. The allocation manager may then authorize or deny the requested process depending upon whether the currently-available resources are sufficient to adequately service the resource requirements of the requested process.
    Type: Grant
    Filed: March 9, 2000
    Date of Patent: December 6, 2005
    Assignees: Sony Corporation, Sony Electronics Inc.
    Inventors: Bruce A. Fairman, Scott D. Smyers, Harold A. Ludtke, Glen D. Stone
  • Patent number: 6961936
    Abstract: An apparatus and method for controlling stored jobs, in a system of networked MFPs, includes an MFP with a printer for printing stored jobs. A storage device is connected to the printer for storing jobs. A user interface device is connected to the MFP with a printer for selecting job storage options wherein one of the options includes a job retention expiration date. Job retention expiration dates are individualized or selected from a default expiration selection group including 30, 60, 90, 180 days and never. Additionally, the user interface device further includes a date tracker connected to the network for keeping track of the current date. In a further aspect of the invention, the user interface device includes notices to the user of job retention expiration dates as occurring and automatic deletion of retained jobs on the selected expiration date.
    Type: Grant
    Filed: September 20, 2001
    Date of Patent: November 1, 2005
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Kristen L. Bhatti
  • Patent number: 6961934
    Abstract: A portable thread environment comprising: an application programming interface configured to support multiple application program tasks with each task comprised of one or more threads; host adaptation logic for communicatively interfacing the tasks and threads with a host processing environment; and a scheduler configured to determine an execution order of the one or more threads based on one or more execution variables.
    Type: Grant
    Filed: February 23, 2001
    Date of Patent: November 1, 2005
    Assignee: Microtune (San Diego), Inc.
    Inventors: George C. Alford, Hock Law, Suresh S. Kumar