Patents Examined by KimbleAnn Verdi
  • Patent number: 8561085
    Abstract: A system includes a queuing module coupled to a first database and a delivery module coupled to a second database and the queuing module. The queuing module is operable to receive a plurality of communications from a plurality of applications and store the plurality of communications in the first database. The delivery module is operable to receive the stored plurality of communications from the queuing module, access end-user subscription information stored in the second database, determine, based on the end-user subscription information, one or more devices to receive the plurality of communications, and deliver the plurality of communications to the determined one or more devices on behalf of the plurality of applications. The end-user subscription information indicates one or more devices to receive the plurality of communications.
    Type: Grant
    Filed: April 14, 2010
    Date of Patent: October 15, 2013
    Assignee: Bank of America Corporation
    Inventors: Suresh G. Nair, Sundar Krishnamoorthy
  • Patent number: 8544025
    Abstract: A method, system and computer program product for transferring data between two applications over a local network connection. The invention establishes a socket connection between the applications and transfers data through the socket connection using a pseudo socket layer interface when the two endpoints of the socket connection are on the same host. Socket application program interface comprises socket buffers for sending and receiving data. A connecting application identifies and establishes a connection with a listening socket, and places data directly in the socket receive buffer of the receiving socket. If the other end of the socket connection is on a remote host, then data is transferred using underlying network facilities.
    Type: Grant
    Filed: July 28, 2010
    Date of Patent: September 24, 2013
    Assignee: International Business Machines Corporation
    Inventors: Pramod Achyut Bhandiwad, Mallesh Lepakshaiah, Prithvi Srihari, Sivakumar Krishnasamy
  • Patent number: 8528004
    Abstract: Internode data communications in a parallel computer that includes compute nodes that each include main memory and a messaging unit, the messaging unit including computer memory and coupling compute nodes for data communications, in which, for each compute node at compute node boot time: a messaging unit allocates, in the messaging unit's computer memory, a predefined number of message buffers, each message buffer associated with a process to be initialized on the compute node; receives, prior to initialization of a particular process on the compute node, a data communications message intended for the particular process; and stores the data communications message in the message buffer associated with the particular process. Upon initialization of the particular process, the process establishes a messaging buffer in main memory of the compute node and copies the data communications message from the message buffer of the messaging unit into the message buffer of main memory.
    Type: Grant
    Filed: November 7, 2011
    Date of Patent: September 3, 2013
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Archer, Michael A. Blocksome, Douglas R. Miller, Jeffrey J. Parker, Joseph D. Ratterman, Brian E. Smith
  • Patent number: 8528006
    Abstract: A method and apparatus is disclosed for performing real-time execution of a plurality of commands in a non real-time operating system environment using a driver, running at the privileged level and which comprises a command dispatcher, receiving a plurality of commands provided by a user application, and a command queue storing the plurality of commands provided by the user application for further providing the plurality of commands to a target unit for execution.
    Type: Grant
    Filed: February 8, 2012
    Date of Patent: September 3, 2013
    Assignee: Matrox Electronic Systems, Ltd.
    Inventors: Michel Doyon, Stephane Laplante, Stephane Maurice
  • Patent number: 8516505
    Abstract: A computer with a platform that reduces cross-platform compatibility issues associated with executable computer components. A context for a component to be executed on a computer is detected. The context may be detected by searching metadata associated with the component and locating the context therein. If the context is not found in the metadata, then a context may be inferred in other ways, such as from a subsystem major/minor version. Execution of the component invokes one or more components of a computer operating system that provides a platform for executing operations that support execution of the component. Branch components present in the platform are used to select behaviors for the operations based at least in part on the detected context of the component. By providing a context-based selection from any of multiple targeted behaviors for an operation performed by the platform, cross-platform compatibility is improved.
    Type: Grant
    Filed: March 14, 2008
    Date of Patent: August 20, 2013
    Assignee: Microsoft Corporation
    Inventors: Cenk Ergan, Yuqing Li, Justin Steventon, Eric Kochhar, Nikhil Bhatia, Udayasimha Shivaswamy, Erik V. Day
  • Patent number: 8495654
    Abstract: Intranode data communications in a parallel computer that includes compute nodes configured to execute processes, where the data communications include: allocating, upon initialization of a first process of a compute node, a region of shared memory; establishing, by the first process, a predefined number of message buffers, each message buffer associated with a process to be initialized on the compute node; sending, to a second process on the same compute node, a data communications message without determining whether the second process has been initialized, including storing the data communications message in the message buffer of the second process; and upon initialization of the second process: retrieving, by the second process, a pointer to the second process's message buffer; and retrieving, by the second process from the second process's message buffer in dependence upon the pointer, the data communications message sent by the first process.
    Type: Grant
    Filed: November 7, 2011
    Date of Patent: July 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Archer, Michael A. Blocksome, Douglas R. Miller, Joseph D. Ratterman, Brian E. Smith
  • Patent number: 8479220
    Abstract: An API can be extended to automatically correlate events based on context. Started events for each context (e.g. threads of execution) are maintained on independent stacks. When an instrumented application starts a new transaction, the API generates a started event. A transaction correlation unit within the API can determine if the new transaction started during a previous transaction. If there is a previous started event on the stack, the new transaction started during the previous transaction. The transaction correlation unit can insert an outbound indicator into the new started event to associate the new transaction and the previous transaction. Then, the new started event can be pushed on the stack.
    Type: Grant
    Filed: June 4, 2009
    Date of Patent: July 2, 2013
    Assignee: International Business Machines Corporation
    Inventor: Andrew Wilkins
  • Patent number: 8458727
    Abstract: Methods and apparatus are provided which enable client-server communication during the execution of a web application to be batched, so as to manage the processing load on server-side components of the web application and the transmission load on the network(s) coupling the client and server. In some embodiments, client-side components of the web application are operable to capture processing events in a change log on the client, and transmit at least a subset of the entries in the change log to the server upon the occurrence of a predetermined event, such as a passage of time since a previous transmission.
    Type: Grant
    Filed: November 5, 2007
    Date of Patent: June 4, 2013
    Assignee: Microsoft Corporation
    Inventors: Michael Palmer, Oscar Papel, Weiye Zhang
  • Patent number: 8448190
    Abstract: The subject matter described herein includes methods, systems, and computer readable media for predictively downloading background assets with file-not-present tolerance in a virtual world application. According to one aspect for high reliability downloading of background assets using a manifest in a virtual world application, the method includes compiling a manifest of assets potentially needed for execution by a first instance of a virtual world application (VWA), wherein each of the assets is associated with a priority. Using the manifest and while executing the VWA, assets listed in the manifest are downloaded based on the priorities indicated in the manifest. The VWA is executed for displaying a virtual world by loading at least a subset of the assets listed in the manifest.
    Type: Grant
    Filed: March 24, 2008
    Date of Patent: May 21, 2013
    Assignee: MFV.com, Inc.
    Inventor: William B. Lineberger
  • Patent number: 8448186
    Abstract: Techniques for processing events in parallel are provided. Multiple publishers publish events in parallel to a plurality of channels. Each channel is a queue that maintains a list of events that are awaiting to be processed by one or more slave processes. In one approach, all events that need to be persistent are published to a persistent channel, whereas all events that do not need to be persistent are published to one or more in-memory channels. In another approach, for each event, a publisher determines which channel of the plurality of channel to publish the event. The determination is based, at least in part, on the number of events in each channel and, optionally, the type of each event in each channel. In either approach, each event from a single publisher is published to the same channel.
    Type: Grant
    Filed: July 13, 2007
    Date of Patent: May 21, 2013
    Assignee: Oracle International Corporation
    Inventors: Abhishek Saxena, Neerja Bhatt
  • Patent number: 8443379
    Abstract: A queue management system may store a queue of messages in a main queue. When a message is processed by an application, the message may be moved to a subqueue. In the subqueue, the message may be locked from other applications. After processing the message, the application may delete the message from the subqueue and complete the action required. If the application fails to respond in a timely manner, the message may be moved from the subqueue to the main queue and released for another application to service the message. If the application responds after the time out period, a fault may occur when the application attempts to delete the message from the subqueue. Such an arrangement allows a “peek and lock” functionality to be implemented using a subqueue.
    Type: Grant
    Filed: June 18, 2008
    Date of Patent: May 14, 2013
    Assignee: Microsoft Corporation
    Inventors: Affan Arshad Dar, Sanjib Saha
  • Patent number: 8370850
    Abstract: A number of applications can be run by the computing system. Such applications can execute independently from each other and can also each independently manage a corresponding set of content stored on a local storage device (LSD). One of the advantages presented by the invention is the ability of the LSD to inform one application of the content made available on the LSD by another one of the applications even though the applications have no relationship to each other. In this way, a synergy between the independent applications can be achieved providing a co-operative environment that can result in, for example, improved operation of the computing system, improved resource (i.e., memory, bandwidth, processing) allocation and use, and other factors.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: February 5, 2013
    Assignee: SanDisk IL Ltd.
    Inventors: Alain Nochimowski, Amir Mosek
  • Patent number: 8352957
    Abstract: An embodiment of the invention provides an apparatus and method for passing metadata in STREAMS modules. The apparatus and method are configured to perform acts including, allocating a STREAMS message in a kernel space, storing data in the data block in the STREAMS message, allocating a buffer space for metadata associated with the data, storing the metadata of the data in the metadata block in the STREAMS message, passing the metadata among STREAMS modules as a part of the STREAMS message, and performing an operation based upon the metadata.
    Type: Grant
    Filed: January 31, 2008
    Date of Patent: January 8, 2013
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventor: Yoshihiro Ishijima
  • Patent number: 8332873
    Abstract: A method for determining an application instance placement in a set of machines under one or more resource constraints includes the following steps. An estimate is computed of a value of the first metric that can be achieved by a current application instance placement and a current application load distribution. A new application instance placement and a new application load distribution are determined, wherein the new application instance placement and the new load distribution optimize the first metric.
    Type: Grant
    Filed: June 10, 2008
    Date of Patent: December 11, 2012
    Assignee: International Business Machines Corporation
    Inventors: Constantin M. Adam, Michael Joseph Spreitzer, Malgorzata Steinder, Chunqiang Tang
  • Patent number: 8296776
    Abstract: An efficient mechanism for terminating applications of a data processing system is described herein. In one embodiment, in response to a request for exiting from an operating environment of a data processing system, an operating system examines an operating state associated with an application running within the operating environment, where the operating state is stored at a predetermined memory location shared between the operating system and the application. The operating system immediately terminates the application if the operating state associated with the application indicates that the application is safe for a sudden termination. Otherwise, the operating system defers terminating the application if the operating state associated with the application indicates that the application is unsafe for the sudden termination.
    Type: Grant
    Filed: June 20, 2008
    Date of Patent: October 23, 2012
    Assignee: Apple Inc.
    Inventors: David Alexander Zarzycki, Curtis Rothert, Ali Ozer, Mark Andrew Piccirelli
  • Patent number: 8291438
    Abstract: Procedures for printing virtualized applications are discussed. In implementations, a spooler is associated with an established virtual environment including a virtualized application. The spooler may be associated by making a native spooler, installed on a computing system aware of the virtual environment. In other implementations, the spooler may be virtualized such as by including an instance of a spooler in the virtual environment. A printer driver may be virtualized for use in print virtual application output. Virtualizing printer drivers may allow virtual applications to access and use printer and/or software resources without installing the resource on the device.
    Type: Grant
    Filed: June 29, 2007
    Date of Patent: October 16, 2012
    Assignee: Microsoft Corporation
    Inventors: John M Sheehan, Cread W Mefford, Stuart H Schaefer, Jeffrey J Bromberger
  • Patent number: 8286195
    Abstract: A computing device has two or more software stacks, each stack simultaneously running a different operating system. Only one enabled operating system at a time has control of hardware resources of the computing device. Each disabled operating system has its device drivers disabled. The drivers may be disabled by stopping device driver messages to devices at a firmware layer unassociated with any operating system. The drivers may be disabled by having their associated operating system dynamically unload them when the operating system is disabled. In some instances, the drivers may be modified to include a “stop” control that tells the driver to stop communicating with its associated device, and a “resume” control that tells the driver to resume communication. When an operating system is disabled, the operating system may send a “stop” message to its device drivers. Drivers associated with messages passed between operating systems may remain enabled.
    Type: Grant
    Filed: October 31, 2007
    Date of Patent: October 9, 2012
    Assignee: Microsoft Corporation
    Inventors: Jay Finger, Jeffrey Alan Davis, Brian Douglas King, John A. Yovin, Praful Prataprai Chavda
  • Patent number: 8234660
    Abstract: An apparatus and methods for enabling a support person to receive and review information relating to multiple remote nodes and multiple applications running on each node. The apparatus comprises a presentation component accessed by the support person or administrator, and engine installed on each remote node. The engine comprises a manager component, a multiplicity of plug-ins for retrieving information about the server or about the application, and a plug-in manager for each plug-in.
    Type: Grant
    Filed: April 12, 2006
    Date of Patent: July 31, 2012
    Assignee: SAP Portals Israel, Ltd.
    Inventors: Nathan Ari, Avishai Geller
  • Patent number: 8225336
    Abstract: A method of configuring a virtual device and a system of configuring a virtual device is provided. A plurality of virtual device drivers corresponding to a plurality of specific functions of a first device is identified along with a second device. A plurality of virtual device drivers corresponding to the plurality of specific functions of the second device is also identified. A plurality of virtual device drivers required for a service is selected from the plurality of virtual device drivers corresponding to the plurality of specific functions of the first device and the plurality of virtual device drivers corresponding to the plurality of specific functions of the second device. The virtual device is configured with the plurality of virtual device drivers required for the service.
    Type: Grant
    Filed: July 11, 2007
    Date of Patent: July 17, 2012
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Su Myeon Kim, Hun Lim, Jin Wook Lee
  • Patent number: 8191076
    Abstract: One embodiment of the present invention provides a system that facilitates making an inter-process procedure call through a shared memory that is shared between a client process and a server process, wherein the client makes the inter-process procedure call as if the client is making a local procedure call, but the procedure call actually executes on the server. The system operates by an Application Programming Interface (API) to allow the client to make an inter-process procedure call. The system then allocates a section of the shared memory for the data structure parameters of the inter-process procedure call.
    Type: Grant
    Filed: August 5, 2010
    Date of Patent: May 29, 2012
    Assignee: Oracle International Corporation
    Inventors: Mohammad Shoaib Lari, Srinath Krishnaswamy