Patents Examined by Lilian Vo
  • Patent number: 7437725
    Abstract: The present invention relates to a system for handling client/server traffic and communications pertaining to the delivery of hypertext information to a client. The system includes a central server which processes a request for a web page from a client. The central server is in communication with a number of processing/storage entities, such as an annotation means, a cache, and a number of servers which provide identification information. The system operates by receiving a request for a web page from a client. The cache is then examined to determine whether information for the requested web page is available. If such information is available, it is forwarded promptly to the client for display. Otherwise, the central server retrieves the relevant information for the requested web page from the pertinent server.
    Type: Grant
    Filed: September 25, 2003
    Date of Patent: October 14, 2008
    Assignee: General Electric Company
    Inventors: Leo S. Chang, Matthew J. Mucklo
  • Patent number: 7406688
    Abstract: A parallel process execution method that allocates CPU time to parallel processes at any desired ratios. The method sets a time allocation ratio to determine how much of a given cycle period should be allocated for execution of a parallel program. Process switching is then performed in accordance with the time allocation ratio set to the parallel program. More specifically, parallel processes produced from a parallel program are each assigned to a plurality of processors, and those parallel processes are started simultaneously on the processors. When the time elapsed since the start of the parallel processes has reached a point that corresponds to the time allocation ratio that has been set to the parallel program, the execution of the assigned parallel processes is stopped simultaneously on the plurality of processors.
    Type: Grant
    Filed: August 26, 2003
    Date of Patent: July 29, 2008
    Assignee: Fujitsu Limited
    Inventors: Satoki Shibayama, Yusuke Matsushima, Kaoru Kikushima
  • Patent number: 7395536
    Abstract: System and method for submitting and performing computational tasks in a distributed heterogeneous networked environment. Embodiments may allow tasks to be submitted and run in parallel on a network of heterogeneous computers implementing a variety of operating environments. In one embodiment, a user on an originating node may advertise code on the network. Peer nodes that respond to the advertisement may receive the code. A job to be executed by the code may be split into separate tasks to distributed to the peer nodes that received the code. These tasks may be advertised on the network. Tasks may be assigned to peer nodes that respond to the task advertisements. The peer nodes may then work on the assigned tasks. Once a peer node's work on a task is completed, the peer node may return the results of the task to the originating node.
    Type: Grant
    Filed: November 14, 2002
    Date of Patent: July 1, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Jerome M. Verbeke, Neelakanth M. Nadgir, Gregory R. Ruetsch, Ilya A. Sharapov, Michael J. Vernik, Vu Trang
  • Patent number: 7386849
    Abstract: A method and apparatus are provided for managing work granules being executed in parallel. A task is evenly divided between a number of work granules. The number of work granules falls between a threshold minimum and a threshold maximum. The threshold minimum and maximum may be configured to balance a variety of efficiency factors affected by the number of work granules, including workload skew and overhead incurred in managing larger number of work granules. Work granules are distributed to processes on nodes according to which of the nodes, if any, may execute the work granule efficiently. A variety of factors may used to determine where a work granule may be performed efficiently, including whether data accessed during the execution of a work granule may be locally accessed by a node.
    Type: Grant
    Filed: March 16, 2004
    Date of Patent: June 10, 2008
    Assignee: Oracle International Corporation
    Inventors: Benoit Dageville, Patrick A. Amor
  • Patent number: 7373644
    Abstract: Methods and apparatus for detecting a change in demand for server resources across a load-bearing system having one or more content servers hosting identical content, the load-bearing system being connected to a network of content servers; and automatically modifying the number of content servers on the load-bearing system in response to the change in demand.
    Type: Grant
    Filed: October 2, 2001
    Date of Patent: May 13, 2008
    Assignee: Level 3 Communications, LLC
    Inventor: Justin Aborn
  • Patent number: 7356820
    Abstract: A driver is provided to manage launching of tasks at different levels of priority and within the parameters of the firmware interface. The driver includes two anchors for managing the tasks, a dispatcher and an agent. The dispatcher operates at a medium priority level and manages communication from a remote administrator. The agent functions to receive communications from the dispatcher by way of a shared data structure and to launch lower priority level tasks in respond to the communication. The shared data structure stores communications received from the dispatcher. Upon placing the communication in the shared data structure, the dispatcher sends a signal to the agent indicating that a communication is in the data structure for reading by the agent. Following reading of the communication in the data structure, the agent launches the lower priority level task and sends a signal to the data structure indicating the status of the task.
    Type: Grant
    Filed: July 2, 2001
    Date of Patent: April 8, 2008
    Assignee: International Business Machines Corporation
    Inventor: Fred A. Bower, III
  • Patent number: 7353512
    Abstract: A method for provisioning one or more mobile applications. The method including deploying the mobile application as a web service in a UDDI directory, downloading the mobile applications from the UDDI directory by invoking the web service. The method may also include locating the mobile application in the UDDI directory. The method further includes extending a WSDL template to define the mobile application, wherein the extending provides for wrapping the mobile application as the web service, and publishing the WSDL defined mobile application in the UDDI directory.
    Type: Grant
    Filed: September 29, 2003
    Date of Patent: April 1, 2008
    Assignee: International Business Machines Corporation
    Inventors: Neil Katz, James McConnell, Ilan Paleiov, Roni Ram, Pnina Vortman
  • Patent number: 7340741
    Abstract: A transfer of control to a batch application is intercepted, wherein a batch front-end routine receives control in place of the batch application and performs initialization processing. This initialization processing comprises issuing a DLI restart call and issuing a DLI checkpoint call. If the DLI restart call returns a checkpoint ID, then one or more databases associated with the batch application are repositioned. The transfer of control to the batch application is then resumed, whereby the batch application restarts from the checkpoint ID, if the checkpoint ID was returned by the DLI restart call, in a manner transparent to the batch application.
    Type: Grant
    Filed: February 28, 2003
    Date of Patent: March 4, 2008
    Assignee: International Business Machines Corporation
    Inventors: Alan R. Smith, James C. Wright
  • Patent number: 7337442
    Abstract: Cooperatively scheduling hardware resources by providing information on shared resources within processor packages to the operating system. Logical processors may be included in packages in which some or all processor execution resources are shared among logical processors. In order to better schedule thread execution, information regarding which logical processors are sharing processor execution resources and information regarding which system resources are shared among processor packages is provided to the operating system. Extensions to the SRAT (static resource affinity table) can be used to provide this information.
    Type: Grant
    Filed: December 3, 2002
    Date of Patent: February 26, 2008
    Assignee: Microsoft Corporation
    Inventors: Son VoBa, Valerie R. See, Tony Dwayne Pierce, William J. Westerinen
  • Patent number: 7328438
    Abstract: An apparatus, program product and method support the deallocation of a data structure in a multithreaded computer without requiring the use of computationally expensive semaphores or spin locks. Specifically, access to a data structure is governed by a shared pointer that, when a request is received to deallocate the data structure, is initially set to a value that indicates to any thread that later accesses the pointer that the data structure is not available. In addition, to address any thread that already holds a copy of the shared pointer, and thus is capable of accessing the data structure via the shared pointer after the initiation of the request, all such threads are monitored to determine whether any thread is still using the shared pointer by determining whether any thread is executing program code that is capable of using the shared pointer to access the data structure.
    Type: Grant
    Filed: March 27, 2003
    Date of Patent: February 5, 2008
    Assignee: International Business Machines Corporation
    Inventors: Willaim Joseph Armstrong, Peter Joseph Heyrman, Naresh Nayar
  • Patent number: 7325230
    Abstract: A system for compiling source programs into machine language programs, comprising: a data type information processing module configured to analyze a definition statement of a fixed-point data type in a source program, acquire data type information of the fixed-point data type; a type-information storage; a variable information processing module configured to analyze a variable declaration statement of the fixed-point data type, acquire variable information; a variable storage; and a code generating module configured to read arithmetic expression data, acquire the type number, acquire the data type information, convert the arithmetic expression data.
    Type: Grant
    Filed: December 30, 2003
    Date of Patent: January 29, 2008
    Assignee: Kabushiki Kaisha Toshiba
    Inventor: Katsuya Uchida
  • Patent number: 7325233
    Abstract: Methods and apparatus, including computer program products, for using process attachable virtual machines to provide isolation between user sessions in a scalable manner, enabling a server to robustly process requests corresponding to a large number of user sessions. The methods and apparatus include initializing a process attachable virtual machine for a user session, receiving a request corresponding to the user session, and binding the process attachable virtual machine to an operating system process to process the request.
    Type: Grant
    Filed: November 7, 2002
    Date of Patent: January 29, 2008
    Assignee: SAP AG
    Inventors: Norbert Kuck, Harald Kuck, Edgar Lott, Hans-Christoph Rohland, Oliver Schmidt
  • Patent number: 7257812
    Abstract: Methods and apparatus for managing execution of an application according to an application lifecycle. The application lifecycle is managed by an application manager through a set of commands that enable the application manager to cause the application to enter one of a plurality of states. In addition, the application can communicate with the application manager to indicate that the application cannot change its state as the application manager has requested or to request that the application manager change the state of the application to a particular state.
    Type: Grant
    Filed: December 16, 1999
    Date of Patent: August 14, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Bartley H. Calder, Tao Ye, Jesus David Rivas, Jonathan D. Courtney, Keith L. Messer
  • Patent number: 7228547
    Abstract: Provided is a method, system, and program for enabling access to a plurality of services. A plurality of service class implementations is provided for services from different vendors, wherein each service class implementation provides an implementation of methods and objects from a same abstract service class. A service object is constructed for one service in response to at least one called method from one of the service class implementations. The service object includes information on resources of the service. Method calls are received from one service class implementation requesting information on service resources for one named service. The requested information is accessed from the service object for the named service to return to the method call.
    Type: Grant
    Filed: July 30, 2001
    Date of Patent: June 5, 2007
    Assignee: International Business Machines Corporation
    Inventor: Alan Tsu-I Yaung
  • Patent number: 7178147
    Abstract: Provided is a method, system, and program for allocating processor resources to a first and second types of tasks. An allocation of processor resources to the first and second types of tasks is indicated. Data is gathered indicating a first workload level for the first type of tasks and a second workload level for the second type of tasks. A determination is made of a change to the indicated allocation of processor resources to the first and second types of tasks based on at least one of the first workload level and second workload level data. Tasks of the first type are dispatched to the processor resources allocated to the first type and tasks of the second type are dispatched to the processor resources allocated to the second type.
    Type: Grant
    Filed: September 21, 2001
    Date of Patent: February 13, 2007
    Assignee: International Business Machines Corporation
    Inventors: Michael Thomas Benhase, YuCheng Hsu
  • Patent number: 7155550
    Abstract: A program-executing apparatus has a simple configuration, is capable of executing high-speed processing, and is capable of providing high security. The apparatus is configured such that a host system wherein a program execution environment using a general-purpose OS 16 is set and a subsystem 200 wherein a virtual-machine execution environment is set are built into independent operation circuits, and a DPRAM 3 is coupled to a general-purpose bus that connects the two operation circuits. In one of the systems 100 and 200, when a process to be requested to the other system has occurred, an interface built into each of the systems writes a command indicative of the contents of the process into the DPRAM, and outputs an interrupt to the remote system; and in response to an interrupt notified from the other system, the interface executes a process of reading a command written by the DPRAM 3.
    Type: Grant
    Filed: May 30, 2002
    Date of Patent: December 26, 2006
    Assignee: Omron Corporation
    Inventors: Motoyuki Katoh, Kozo Moriyama, Yosuke Baba
  • Patent number: 7155720
    Abstract: A method of assigning resources to nodes in a workflow. In one embodiment, a plurality of nodes are defined. Each of the nodes is a task to be executed within the workflow. In the present embodiment, resources are defined to perform the execution of the nodes. In the present embodiment, a set of data items is stored. The stored data items comprise variables pertaining to workflow execution in the workflow. In the present embodiment, those defined resources are assigned to execute each of the nodes, according to a set of rules. In the present embodiment, the set of rules is for controlling the execution of the workflow.
    Type: Grant
    Filed: October 26, 2001
    Date of Patent: December 26, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Fabio Casati, Silvana Castano, Mariagrazia Fugini
  • Patent number: 7143411
    Abstract: An apparatus, system, and method allow for capping processor utilization in a computer system. The processors are typically central processing units (CPUs) under control of a system scheduler. The system scheduler controls which of the CPUs will run specific processes. The processes may run according to a predefined priority assigned to each of the processors. A processor bandwidth waster includes a software routine that operates as an infinite loop in one or more of the CPUs. The bandwidth waster may have the highest priority of any process in the computer system such that the bandwidth waster always runs on the CPUs unless a specific action is taken to turn off, or stop, the bandwidth waster. Data are gathered from the CPUs, including time of operation of any bandwidth waster, and the gathered data are used to compute a bill for operation of the computer system.
    Type: Grant
    Filed: March 15, 2002
    Date of Patent: November 28, 2006
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Edgar Circenis, Patrick Allaire
  • Patent number: 7137118
    Abstract: An embedded symmetrical multiprocessor system includes arbitration logic that determines which central processing unit has access to shared memory. Upon grant of access, the memory address is stored in a memory address register. An address compare circuit compares the access address of any other central processing unit with this stored address. Upon a match, the arbitration logic stalls the second accessing central processing unit until expiration of a programmable number of wait states following the first access. These wait states give the first central processing unit enough time to determine the state of a lock variable and take control of an operation protected by the lock variable. The application boot code can determine how long the read-check-write operation requires and program that value into the wait-state generator.
    Type: Grant
    Filed: September 27, 2002
    Date of Patent: November 14, 2006
    Assignee: Texas Instruments Incorporated
    Inventor: Steven R. Jahnke
  • Patent number: 7080378
    Abstract: A method for scaling resources according to workload among virtual servers running on a mainframe computer is provided. The invention comprises monitoring the number of service requests received by a cluster of virtual servers and determining if the service requests exceed a specified service limit for the servers. If the number of service requests exceeds the specified service limit, a new virtual server is automatically deployed by a software solution. This additional virtual server performs identical services as the other virtual servers in the cluster. This process is repeated until there are a sufficient number of servers to handle the workload. Service requests are then allocated among the cluster of virtual servers, until the number of requests falls below a certain threshold, at which point the extra servers are automatically deactivated.
    Type: Grant
    Filed: May 17, 2002
    Date of Patent: July 18, 2006
    Assignee: Storage Technology Corporation
    Inventors: Thomas Nelson Noland, Charles A. Milligan, Leslie K. Hodge