Patents Examined by KimbleAnn Verdi
-
Patent number: 8561085Abstract: 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: GrantFiled: April 14, 2010Date of Patent: October 15, 2013Assignee: Bank of America CorporationInventors: Suresh G. Nair, Sundar Krishnamoorthy
-
Patent number: 8544025Abstract: 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: GrantFiled: July 28, 2010Date of Patent: September 24, 2013Assignee: International Business Machines CorporationInventors: Pramod Achyut Bhandiwad, Mallesh Lepakshaiah, Prithvi Srihari, Sivakumar Krishnasamy
-
Patent number: 8528004Abstract: 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: GrantFiled: November 7, 2011Date of Patent: September 3, 2013Assignee: International Business Machines CorporationInventors: Charles J. Archer, Michael A. Blocksome, Douglas R. Miller, Jeffrey J. Parker, Joseph D. Ratterman, Brian E. Smith
-
Patent number: 8528006Abstract: 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: GrantFiled: February 8, 2012Date of Patent: September 3, 2013Assignee: Matrox Electronic Systems, Ltd.Inventors: Michel Doyon, Stephane Laplante, Stephane Maurice
-
Patent number: 8516505Abstract: 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: GrantFiled: March 14, 2008Date of Patent: August 20, 2013Assignee: Microsoft CorporationInventors: Cenk Ergan, Yuqing Li, Justin Steventon, Eric Kochhar, Nikhil Bhatia, Udayasimha Shivaswamy, Erik V. Day
-
Patent number: 8495654Abstract: 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: GrantFiled: November 7, 2011Date of Patent: July 23, 2013Assignee: International Business Machines CorporationInventors: Charles J. Archer, Michael A. Blocksome, Douglas R. Miller, Joseph D. Ratterman, Brian E. Smith
-
Patent number: 8479220Abstract: 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: GrantFiled: June 4, 2009Date of Patent: July 2, 2013Assignee: International Business Machines CorporationInventor: Andrew Wilkins
-
Patent number: 8458727Abstract: 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: GrantFiled: November 5, 2007Date of Patent: June 4, 2013Assignee: Microsoft CorporationInventors: Michael Palmer, Oscar Papel, Weiye Zhang
-
Patent number: 8448190Abstract: 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: GrantFiled: March 24, 2008Date of Patent: May 21, 2013Assignee: MFV.com, Inc.Inventor: William B. Lineberger
-
Patent number: 8448186Abstract: 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: GrantFiled: July 13, 2007Date of Patent: May 21, 2013Assignee: Oracle International CorporationInventors: Abhishek Saxena, Neerja Bhatt
-
Patent number: 8443379Abstract: 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: GrantFiled: June 18, 2008Date of Patent: May 14, 2013Assignee: Microsoft CorporationInventors: Affan Arshad Dar, Sanjib Saha
-
Patent number: 8370850Abstract: 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: GrantFiled: February 25, 2008Date of Patent: February 5, 2013Assignee: SanDisk IL Ltd.Inventors: Alain Nochimowski, Amir Mosek
-
Patent number: 8352957Abstract: 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: GrantFiled: January 31, 2008Date of Patent: January 8, 2013Assignee: Hewlett-Packard Development Company, L.P.Inventor: Yoshihiro Ishijima
-
Patent number: 8332873Abstract: 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: GrantFiled: June 10, 2008Date of Patent: December 11, 2012Assignee: International Business Machines CorporationInventors: Constantin M. Adam, Michael Joseph Spreitzer, Malgorzata Steinder, Chunqiang Tang
-
Patent number: 8296776Abstract: 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: GrantFiled: June 20, 2008Date of Patent: October 23, 2012Assignee: Apple Inc.Inventors: David Alexander Zarzycki, Curtis Rothert, Ali Ozer, Mark Andrew Piccirelli
-
Patent number: 8291438Abstract: 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: GrantFiled: June 29, 2007Date of Patent: October 16, 2012Assignee: Microsoft CorporationInventors: John M Sheehan, Cread W Mefford, Stuart H Schaefer, Jeffrey J Bromberger
-
Patent number: 8286195Abstract: 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: GrantFiled: October 31, 2007Date of Patent: October 9, 2012Assignee: Microsoft CorporationInventors: Jay Finger, Jeffrey Alan Davis, Brian Douglas King, John A. Yovin, Praful Prataprai Chavda
-
Patent number: 8234660Abstract: 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: GrantFiled: April 12, 2006Date of Patent: July 31, 2012Assignee: SAP Portals Israel, Ltd.Inventors: Nathan Ari, Avishai Geller
-
Patent number: 8225336Abstract: 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: GrantFiled: July 11, 2007Date of Patent: July 17, 2012Assignee: Samsung Electronics Co., Ltd.Inventors: Su Myeon Kim, Hun Lim, Jin Wook Lee
-
Patent number: 8191076Abstract: 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: GrantFiled: August 5, 2010Date of Patent: May 29, 2012Assignee: Oracle International CorporationInventors: Mohammad Shoaib Lari, Srinath Krishnaswamy