Message Using Queue Patents (Class 719/314)
  • Patent number: 10303628
    Abstract: Flow logic supports concurrency of multiple threads and/or tag IDs to be concurrently communicated across the interconnect while allowing the one or more target IP cores to be able to reorder incoming request transactions from the initiator IP core in a manner that is optimal for that target IP core while relieving that target IP core from having to maintain the sequential issue order of transaction responses to the incoming request transactions in the thread or tags when processed by the target IP core. The flow logic cooperates with the reorder storage buffers to control an operation of the reorder storage buffers as well as control issuance of at least the request transactions from the initiator IP core onto the interconnect in order to maintain proper sequential ordering of the transaction responses for the thread or tags when the transaction responses are returned back to the initiator IP core.
    Type: Grant
    Filed: December 21, 2015
    Date of Patent: May 28, 2019
    Assignee: Sonics, Inc.
    Inventors: Jeremy Chan, Drew E. Wingard, Chien-Chun Chou, Hervé Jacques Alexanian, Kevin L. Daberkow, Harutyun Aslanyan, Timothy A. Pontius
  • Patent number: 10290351
    Abstract: Methods and systems are provided that may include a memory device having a physical nonvolatile memory, a memory space, and a controller. At least a portion of a physical nonvolatile memory may permit a direct read operation of the physical nonvolatile memory and prohibit a direct write operation of the physical nonvolatile memory. A memory space may comprise at least open one write overlay window available after a reset operation. Such a memory space may be adapted to permit at least one read overlay window to be opened that is logically separate from at least one open write overlay window. A controller may be included to open at least one read overlay window.
    Type: Grant
    Filed: May 12, 2014
    Date of Patent: May 14, 2019
    Assignee: Micron Technology, Inc.
    Inventor: Brent Ahlquist
  • Patent number: 10235220
    Abstract: A system, method, and computer program product are provided for improving resource utilization of multithreaded applications. Rather than requiring threads to block while waiting for data from a channel or requiring context switching to minimize blocking, the techniques disclosed herein provide an event-driven approach to launch kernels only when needed to perform operations on channel data, and then terminate in order to free resources. These operations are handled efficiently in hardware, but are flexible enough to be implemented in all manner of programming models.
    Type: Grant
    Filed: September 7, 2012
    Date of Patent: March 19, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventors: Lee W. Howes, Benedict R. Gaster, Michael Clair Houston, Michael Mantor
  • Patent number: 10212120
    Abstract: A stream verification system for a distributed message queue system with metric collectors on each producer and consumer. A producer time stamp allows correlation of sent and received messages. Verification reports are organized by a message topic. A cumulative checksum allows detection of missing or corrupted messages. Verification messages are used to determine if a zero message report means no messages were sent, or rather that the messages weren't received.
    Type: Grant
    Filed: April 21, 2017
    Date of Patent: February 19, 2019
    Assignee: Confluent, Inc.
    Inventors: Dan Norwood, Neha Narkhede, Anna Povzner, Joseph Adler, Yasuhiro Matsuda, Jay Kreps
  • Patent number: 10193997
    Abstract: A RESTful API suitable for distributed management tasks implements an aggregator that receives a client request including a URI corresponding to a requested service. The aggregator generates and forwards a proxy request, requesting the same requested service from multiple aggregated resources associated with the aggregator. The aggregator includes, in each proxy request, prefix information that may be used by the aggregated resource to create encoded information that is included in a proxy request response. The aggregator receives the proxy request responses, including the encoded information, and forwards them to the client. The client may then generate a subsequent request for additional information about a resource or service on any one of the aggregated resources. The subsequent request conveys the encoded information to the aggregator, which may then decode the information to identify the appropriate aggregated resource for the request.
    Type: Grant
    Filed: August 5, 2016
    Date of Patent: January 29, 2019
    Assignee: Dell Products L.P.
    Inventors: Christopher Abella Poblete, Jon Robert Hass
  • Patent number: 10168680
    Abstract: A service panel for controlling at least one utility actuator to control the availability of a utility comprises a covered enclosure having an exterior region and an interior region, at least one readily accessible utility control providing ON and OFF request signals and a limited access control in the exterior region providing a temporary activate signal. The service panel has a controller and data storage programmed with code and data and control circuitry providing an “ON” control signal to the at least one utility actuator to switch the at least one utility actuator to the “ON” state, and the control circuitry providing an “OFF” control signal to the at least one utility actuator to switch the at least one utility actuator to an OFF state, the control circuitry further providing a re-key signal to the at least one actuator in response to activation of a switch.
    Type: Grant
    Filed: March 16, 2018
    Date of Patent: January 1, 2019
    Assignee: WCM INDUSTRIES, INC.
    Inventor: Phil A. Parker
  • Patent number: 10169235
    Abstract: In an embodiment, an apparatus includes control circuitry and a memory configured to store a plurality of access instructions. The control circuitry is configured to determine an availability of a resource associated with a given access instruction of the plurality of access instructions. The associated resource is included in a plurality of resources. The control circuitry is also configured to determine a priority level of the given access instruction in response to a determination that the associated resource is unavailable. The control circuit is further configured to add the given access instruction to a subset of the plurality of access instructions in response to a determination that the priority level is greater than a respective priority level of each access instruction in the subset. The control circuit is also configured to remove the given access instruction from the subset in response to a determination that the associated resource is available.
    Type: Grant
    Filed: December 15, 2015
    Date of Patent: January 1, 2019
    Assignee: Apple Inc.
    Inventors: Bikram Saha, Harshavardhan Kaushikkar, Wolfgang H. Klingauf
  • Patent number: 10154432
    Abstract: A system with distributed proxy for reducing traffic in a wireless network satisfies data requests made by a mobile application. The system includes a mobile device having a local proxy for intercepting a data request made by the mobile application. The local proxy simulates application server responses for the mobile application on the mobile device for data requests where responses are available in the local cache. A proxy server is coupled to the mobile device and an application server to which the data request is made. The proxy server is able to communicate with the local proxy. The local proxy forwards the data request to the proxy server for transmission to the application server for a response to the data request. The proxy server queries the application server for any changes to the data request that the mobile application has previously made and notifies the local proxy of such changes.
    Type: Grant
    Filed: March 17, 2018
    Date of Patent: December 11, 2018
    Assignee: Seven Networks, LLC
    Inventors: Michael Luna, Ari Backholm
  • Patent number: 10152450
    Abstract: According to one embodiment of the present invention, a system for operating memory includes a first node coupled to a second node by a network, the system configured to perform a method including receiving the remote transaction message from the second node in a processing element in the first node via the network, wherein the remote transaction message bypasses a main processor in the first node as it is transmitted to the processing element. In addition, the method includes accessing, by the processing element, data from a location in a memory in the first node based on the remote transaction message, and performing, by the processing element, computations based on the data and the remote transaction message.
    Type: Grant
    Filed: August 13, 2012
    Date of Patent: December 11, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Dong Chen, Noel A. Eisley, Philip Heidelberger, James A. Kahle, Fabrizio Petrini, Robert M. Senger, Burkhard Steinmacher-Burow, Yutaka Sugawara
  • Patent number: 10110673
    Abstract: Various techniques for distributed storage of state information in a computing fabric are disclosed herein. In one embodiment, a method includes executing a software application at a computing device of a computing fabric, and thus resulting in a change to a portion of a copy of state information associated with the software application stored in the computing device. The method also includes automatically replicating the change to the portion of the copy of state information stored on the computing device to one or more other computing devices in the computing fabric. The one or more other computing devices individually contain a copy of the state information associated with the software application.
    Type: Grant
    Filed: June 25, 2015
    Date of Patent: October 23, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Mert Coskun, Mihail Tarta
  • Patent number: 10063500
    Abstract: A system for introducing live content into an electronic mail message comprising at least one dynamic live content area sent through an e-mail service provider system comprises memory and a click manager. The memory includes live content comprising image data and expiration data. The click manager receives an indication of the opening of the message by a recipient, wherein the click manager accesses the memory to retrieve live content and send the retrieved live content for rendering in the dynamic live content area of the e-mail message opened by the one of the plurality of recipients.
    Type: Grant
    Filed: February 26, 2016
    Date of Patent: August 28, 2018
    Assignee: SALESFORCE.COM, INC.
    Inventors: James Michael Ciancio-Bunch, Scott McCorkle, Richard W. Jamison
  • Patent number: 10025678
    Abstract: Systems and methods are provided for any party in a cloud ecosystem (cloud providers of such resources, the intermediate management software for such resources, and the end user of such resources) to detect and resolve faulty resources synchronously or asynchronously, before said faults adversely affect the users' workloads. The system requests a service or set of one or more resources within a cloud, automatically checking the infrastructure for various faults that would cause it to be non-functional, including pre-defined and user-defined checks, and resolving them before including the infrastructure in the working service cluster of resources. The system presents an API to the user that returns only functional, production-quality resources that are not in a faulty state. An API that tests and resolves bad infrastructure can be registered during the request or a preceding/subsequent API call, removing the need for the end-user to deal with various types of infrastructure faults.
    Type: Grant
    Filed: August 24, 2015
    Date of Patent: July 17, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ian Alderman, Chris M. Chalfant, Ian Chesal, Douglas Clayton, S. Robert Futrick, Daniel Harris, Andrew Kaczorek, Jason Stowe, Adrian Johnson, Ben Watrous, David Watrous, Archit Kulshrestha
  • Patent number: 10003654
    Abstract: A system provides communication among user devices and Internet of things (IoT) devices includes a user device able to execute at least one application that is able to communicate using at least a first IoT protocol; an IoT device able to communicate using at least a second IoT protocol; and a universal translator able to communicate using at least the first IoT protocol and the second IoT protocol. An automated method of providing communications between a user device and an IoT device includes: determining a protocol of the IoT device; determining a protocol of the user device; and inserting a virtual device if the protocols are different. An automated method of translating communications for IoT systems includes: receiving a device protocol and identifier; receiving an application protocol and identifier; adding the application identifier to an application list; and adding the device identifier to a device list.
    Type: Grant
    Filed: July 20, 2017
    Date of Patent: June 19, 2018
    Assignee: eSMART TECH INC.
    Inventors: Li Chen, Ying Xiong
  • Patent number: 9971912
    Abstract: A solution is presented to securing endpoints without the need for a separate bus or communication path. The solution allows for controlling access to endpoints by utilizing a management protocol by overlapping with existing interconnect communication paths in a packet format and utilizing a PCI address BDF (Bus number, Device number, and Function number) for verification.
    Type: Grant
    Filed: December 10, 2014
    Date of Patent: May 15, 2018
    Assignee: INTEL CORPORATION
    Inventors: Mahesh Natu, Eric Dahlen
  • Patent number: 9929905
    Abstract: A cloud-based remote monitoring system and method monitor one or more industrial devices of an industrial facility, including a local data historian located to monitor one or more parameters from the industrial devices, and store parameters in a local storage associated with the data historian, as well as a cloud agent located at the industrial facility to collect data indicative of a past and/or a present state of the industrial devices from the data historian local storage according a manifest specific to the industrial facility. The cloud agent sends the collected data to a remote cloud platform according to the manifest, and dynamically reconfigures the cloud agent without interrupting the collecting and the sending.
    Type: Grant
    Filed: April 4, 2017
    Date of Patent: March 27, 2018
    Assignee: Rockwell Automation Technologies, Inc.
    Inventors: Juan L. Asenjo, Francisco Maturana
  • Patent number: 9794340
    Abstract: A mechanism and method for accessing data in a shared memory by at least one client, includes an allocation of data in the shared memory, the memory configured in a plurality of buffers, and accessing the data by a client or a server without locking or restricting access to the data.
    Type: Grant
    Filed: September 15, 2014
    Date of Patent: October 17, 2017
    Assignee: GE AVIATION SYSTEMS LLC
    Inventors: Gregory Reed Sykes, Christian Reynolds Decker
  • Patent number: 9794183
    Abstract: A communication technique which includes determining, at least in part by comparing data associated with a packet that has been pulled from a received packet queue with a highest sequence number among packets that have been placed in the received packet queue, that the received packet queue has space available to receive a further packet. A receiver with which the received packet queue is associated is sent, based at least in part on the determination, a next packet.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: October 17, 2017
    Assignee: EMC IP Holding Co. LLC
    Inventors: Lei Chang, Tao Ma, Lirong Jian, Kurt Harriman, Zhanwei Wang, Lili Ma
  • Patent number: 9747434
    Abstract: A technique performs authentication with an external device. The technique involves receiving, by electronic circuitry, a messaging command. The technique further involves providing, by the electronic circuitry, a message to the external device in response to the messaging command. The message includes message fields which store message operating parameters e.g., Hypertext Transfer Protocol (HTTP) header fields containing HTTP operating parameters to form part of an HTTP transaction. The message fields of the message are arranged in a particular order to match an expected order during an order comparison operation performed by the external device to gauge authenticity of the message source. If the particular order matches the expected order, there is lower risk that the message source is fraudulent. However, if the particular order does not match the expected order, there is higher risk that the message source is fraudulent.
    Type: Grant
    Filed: September 17, 2015
    Date of Patent: August 29, 2017
    Assignee: EMC IP Holding Company LLC
    Inventor: Aviv Avital
  • Patent number: 9733999
    Abstract: Systems and techniques for dynamic optimization of application workflows are described herein. A shared program object may be generated. The shared program object may have a unique identifier. A communication channel may be established. The communication channel may allow access to the shared program object by a first application program using the unique identifier. A subscription request may be received from the first application. The subscription request may request access to the shared program object. A set of services corresponding to the first application may be determined in response to receiving the subscription request. Communication may be facilitated between a service of the set of services corresponding to the first application and a second application via the shared program object. The second application may be subscribed to the shared program object.
    Type: Grant
    Filed: March 24, 2016
    Date of Patent: August 15, 2017
    Assignee: Wells Fargo Bank, N.A.
    Inventors: David L. Frost, Adam Sanders, Christopher Shain, Jacob Anson Burkey
  • Patent number: 9727480
    Abstract: A processor includes translation-lookaside buffer (TLB) and a mapping module. The TLB includes a plurality of entries, wherein each entry of the plurality of entries is configured to hold an address translation and a valid bit vector, wherein each bit of the valid bit vector indicates, for a respective address translation context, the address translation is valid if set and invalid if clear. The TLB also includes an invalidation bit vector having bits corresponding to the bits of the valid bit vector of the plurality of entries, wherein a set bit of the invalidation bit vector indicates to simultaneously clear the corresponding bit of the valid bit vector of each entry of the plurality of entries. The mapping module generates the invalidation bit vector.
    Type: Grant
    Filed: November 26, 2014
    Date of Patent: August 8, 2017
    Assignee: VIA ALLIANCE SEMICONDUCTOR CO., LTD.
    Inventors: Terry Parks, Colin Eddy, Viswanath Mohan, John D. Bunda
  • Patent number: 9678789
    Abstract: This disclosure relates to methods and systems for queuing events. In one aspect, a method is disclosed that receives or creates an event and inserts the event into a queue. The method determines at least one property of the event and associates a priority with the event based on the property. The method then processes the event in accordance with its priority.
    Type: Grant
    Filed: September 25, 2014
    Date of Patent: June 13, 2017
    Assignee: THEPLATFORM, LLC
    Inventors: Paul Meijer, Mark Hellkamp
  • Patent number: 9658905
    Abstract: For a thread where data is to be popped off of queue storage, whether or not there is data that can be popped out of the queue storage accessed is first checked and then the data, if any, is popped. When there is no such data, the thread pushes thread information, including the identification information of its own thread, on the same queue and then releases a processor and shifts to a standby state. For a thread that is to push the data, when there is the thread information in the queue, it is determined that there is a thread waiting for the data, and then the data is sent after the thread information has been popped, which in turn resumes the processing.
    Type: Grant
    Filed: September 12, 2012
    Date of Patent: May 23, 2017
    Assignees: Sony Corporation, Sony Interactive Entertainment Inc.
    Inventor: Akihito Nagata
  • Patent number: 9604150
    Abstract: An example of information processing system includes a storage device; and an information processing device for performing near field communication with the storage device. The storage device includes a storage unit storing application data usable in a predetermined application program and shared data usable in an application program regardless of whether or not the application program is the predetermined application program. The information processing system accepts an instruction regarding data read and/or data write from/to the storage device from an application program to be executed by the information processing device. Under the condition that the instruction is from the predetermined application program, the application data is transferred to the predetermined application program. Regardless of whether or not the instruction is from the predetermined application program, the shared data is transferred to the application program that issued the instruction.
    Type: Grant
    Filed: August 28, 2014
    Date of Patent: March 28, 2017
    Assignee: Nintendo Co., Ltd.
    Inventors: Yasuyuki Shimohata, Kimiharu Hyodo, Ryuichi Yoshida, Goro Abe, Yusuke Yamasoto
  • Patent number: 9607303
    Abstract: A system, architecture and model for facilitating extensible messaging and interaction are provided. The message system may use a messaging architecture that includes a domain message model, and open message model and a wire format. The wire format may implement primitive data types that may be used by the open message model to define additional and/or more complex data formats. The open message model may further specify interaction paradigms, generic messages, and message and transport attributes. The generic messages may include payload data whose meaning and context may be defined using the domain message model. The domain message model may include a content definition model and an item type model for building data and object types and specifying data context and relationships. As such, the message system may use generic messages and formats to create different message and item types.
    Type: Grant
    Filed: July 20, 2012
    Date of Patent: March 28, 2017
    Assignee: Thomson Reuters Global Resources
    Inventors: Robert John Bonaguro, Brian Thomas Manning, Michael J. Dupre, Jeffrey Culver Barcalow, John Patrick Merrick
  • Patent number: 9507654
    Abstract: A processing system includes a first processing system element, and a second processing system element configured to communicate with the first processing system. The second processing system element includes a set of messaging queues. Each of the messaging queues includes one or more entries for storing data, a set of delegate queue addresses associated with one of the set of messaging queues; and a delegate queue associated with the set of messaging queues. The delegate queue includes a set of entries corresponding to the delegate queue addresses, and each of the entries of the delegate queue indicates whether a corresponding one of the set of messaging queues is storing data.
    Type: Grant
    Filed: April 23, 2015
    Date of Patent: November 29, 2016
    Assignee: FREESCALE SEMICONDUCTOR, INC.
    Inventors: Peter J. Wilson, Brian C. Kahne
  • Patent number: 9483334
    Abstract: Predictive monitoring of objects in a distributed network system providing cloud services is disclosed. In one embodiment, the methods and systems observing one or more update messages sent and received among components of the distributed network system, the update messages comprising information associated with a state of an object on the distributed network system, determine the state of the object in response to the one or more update messages, and reference a predictive object state model to predict occurrence of an artifact in response to the state of the object. Advantageously, the present embodiments provide advanced warning of potential failures in a distributed network systems, which may enable a system administrator or dynamic process to resolve the failure before it ever occurs. Additional benefits and advantages of the present embodiments will become evident in the following description.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: November 1, 2016
    Assignee: RACKSPACE US, INC.
    Inventor: Alexander Leonard Walsh
  • Patent number: 9462077
    Abstract: One or more parameters of a received data service request may be compared against a lookup table. Based on one or more priority values stored in the lookup table and associated with the one or more request parameters, the data service request may be assigned a priority level.
    Type: Grant
    Filed: March 2, 2005
    Date of Patent: October 4, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Patent number: 9450906
    Abstract: A computer implemented method, system and/or computer program product is provided for managing a messaging queue in an asynchronous messaging system. A duration for which a message can remain on the messaging queue is determined. An age of the message on the messaging queue is monitored. The age of the message on the messaging queue and the determined duration is compared and a notification is generated based on the comparison.
    Type: Grant
    Filed: November 8, 2013
    Date of Patent: September 20, 2016
    Assignee: International Business Machines Corporation
    Inventors: Bret W. Dixon, Scot Dixon
  • Patent number: 9405597
    Abstract: A method and system are provided that may centralize the management of applications that access the data of social networks via API calls. A central service may generate tokens at a generation rate that permit an application to access an API. The tokens may be distributed to queues associated with certain content types. The relative distribution of tokens to each queue may be determined by rules. A queue may release tokens to applications that function to access the content type associated with the queue. The token generation rate and rules may be selected to prevent violation of the rate limits for the API.
    Type: Grant
    Filed: May 1, 2015
    Date of Patent: August 2, 2016
    Assignee: SALESFORCE.COM, INC.
    Inventors: Michael Gordon Luff, Kang Li, Stuart Douglas McClune
  • Patent number: 9396038
    Abstract: A private cloud-based processing pipeline apparatus and method for its use is disclosed. A first load balancer directs data packets to one of a plurality of collectors. The collectors authenticate the data packet. Then a second load balancer receives the data packet from the collector and to direct the data packet to one of a plurality of extract transform load (ETL) frontends, where the data packet is converted from a platform dependent form into a platform independent form and loaded into a queue. Handlers then process the converted data packets. It is emphasized that this abstract is provided to comply with the rules requiring an abstract that will allow a searcher or other reader to quickly ascertain the subject matter of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims.
    Type: Grant
    Filed: March 8, 2013
    Date of Patent: July 19, 2016
    Assignee: Sony Interactive Entertainment, Inc.
    Inventors: Sean Ian Allen, David Sansot, Michael Taylor
  • Patent number: 9391728
    Abstract: In a network device, apparatus and methods perform precision time stamping. A time agent receives a master pace signal corresponding to a time representation based on a master real time clock in a master clock domain. A time accumulator accumulates time units one fill quantum at a time based on the master pace signal. The time accumulator decreases the accumulated time units by a leak quantum according to a local clock signal running at a higher frequency than the master pace signal. Correction logic periodically generates, at a granularity corresponding to the frequency of the local clock signal, an updated time representation in a target clock domain based on a residual number of time units in the time accumulator before depositing an additional fill quantum of time units in the time accumulator.
    Type: Grant
    Filed: February 7, 2014
    Date of Patent: July 12, 2016
    Assignee: MARVELL WORLD TRADE LTD.
    Inventor: Tord Haulin
  • Patent number: 9385976
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, are described for storing message data in a PubSub system. In certain examples, messages are received from a plurality of publishers for a plurality of distinct channels. The messages are ordered and stored in a plurality of buffers, with each channel having its own respective buffer. After a message has been written to a writable portion of the buffer for a channel, a pointer demarking a boundary between a readable portion of the buffer and the writeable portion of the buffer is advanced in an atomic operation. Following the atomic operation, the message resides in the readable portion and may be accessed by PubSub system components and/or processes. In general, one or more subscribers, components, or processes may read messages from the readable portion, in parallel.
    Type: Grant
    Filed: October 9, 2015
    Date of Patent: July 5, 2016
    Assignee: MACHINE ZONE, INC.
    Inventor: Younès Hafri
  • Patent number: 9367430
    Abstract: In an approach for generating transaction tracking data that is used to simulate a customer environment or test case scenario, a processor receives user input data, wherein the user input data includes, at least, an application topology constructed using a graphical user interface. A processor validates the user input data for, at least, supported environments of components of the application topology. A processor generates transaction tracking data based on, at least, the user input data.
    Type: Grant
    Filed: December 28, 2015
    Date of Patent: June 14, 2016
    Assignee: International Business Machines Corporation
    Inventors: Boon C. Chee, Scot W. Dixon, Michelle M. Y. Loffler, Samuel K. H. Seow, Nicholas Wu
  • Patent number: 9280393
    Abstract: A middleware processor provisioning process provisions a plurality of processors in a multi-processor environment. The processing capability of the multiprocessor environment is subdivided and multiple instances of service applications start protected processes to service a plurality of user processing requests, where the number of protected processes may exceed the number of processors. A single processing queue is created for each processor. User processing requests are portioned and dispatched across the plurality of processing queues and are serviced by protected processes from corresponding service applications, thereby efficiently using available processing resources while servicing the user processing requests in a desired manner.
    Type: Grant
    Filed: March 21, 2014
    Date of Patent: March 8, 2016
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Bird, David Kalmuk
  • Patent number: 9237193
    Abstract: Several different embodiments of a massively scalable object storage system are described. The object storage system is particularly useful for storage in a cloud computing installation whereby shared servers provide resources, software, and data to computers and other devices on demand. In several embodiments, the object storage system includes a ring implementation used to associate object storage commands with particular physical servers such that certain guarantees of consistency, availability, and performance can be met. In other embodiments, the object storage system includes a synchronization protocol used to order operations across a distributed system. In a third set of embodiments, the object storage system includes a metadata management system. In a fourth set of embodiments, the object storage system uses a structured information synchronization system. Features from each set of embodiments can be used to improve the performance and scalability of a cloud computing object storage system.
    Type: Grant
    Filed: April 9, 2014
    Date of Patent: January 12, 2016
    Assignee: Rackspace US, Inc.
    Inventors: Michael Barton, Will Reese, John A. Dickinson, Jay B. Payne, Charles B. Thier, Gregory Holt
  • Patent number: 9223625
    Abstract: A client connected to a communication network performs an access request to an object. An application server performs an application by an actual object according to the client request. An object pool connected to the client and the application server pools a proxy object corresponding to the actual object and holds the actual object management information. The application server notifies the object pool of an event according to the status change of the application. The object pool automatically updates the actual object management information according to the notification of the event from the application server.
    Type: Grant
    Filed: April 16, 2012
    Date of Patent: December 29, 2015
    Assignee: International Business Machines Corporation
    Inventors: Iwao Inagaki, Seiji Hamada, Masahiro Ohkawa, Naomi Zenge, Kaori Nanba
  • Patent number: 9189360
    Abstract: A method is described that involves referring to first information from a directory table in system memory. The first information includes location information and size information of a first slice of system memory where first tracing data is to be stored. The method also includes tracking the amount of tracing data stored in the first slice of system memory and comparing the amount against the size information. The method also includes, before the first slice of system memory is filled, referring to second information from the directory table in system memory, where, the second information includes location information and size information of a second slice of system memory where second tracing data is to be stored. The first slice is not contiguous with the second slice of system memory.
    Type: Grant
    Filed: June 15, 2013
    Date of Patent: November 17, 2015
    Assignee: Intel Corporation
    Inventors: Beeman C. Strong, Jason W. Brandt, Tsvika Kurts, Peter Lachner, Itamar Kazachinsky, Stephen J. Robinson, Peggy J. Irelan
  • Patent number: 9178834
    Abstract: A communication technique which includes determining, at least in part by comparing data associated with a packet that has been pulled from a received packet queue with a highest sequence number among packets that have been placed in the received packet queue, that the received packet queue has space available to receive a further packet. A receiver with which the received packet queue is associated is sent, based at least in part on the determination, a next packet.
    Type: Grant
    Filed: June 25, 2013
    Date of Patent: November 3, 2015
    Assignee: EMC Corporation
    Inventors: Lei Chang, Tao Ma, Lirong Jian, Kurt Harriman, Zhanwei Wang, Lili Ma
  • Patent number: 9164909
    Abstract: A method for utilizing process identifiers to invalidate cached data is disclosed herein. The invention is a method for associating persistently stored data with an identifier of the process which created it, such that when the process that created the data is no longer present on the machine where the data is stored the data may be marked as invalid to prevent the use of “stale” data.
    Type: Grant
    Filed: August 9, 2014
    Date of Patent: October 20, 2015
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventor: Thomas R. Bolt
  • Patent number: 9158718
    Abstract: Deterministic message processing in a direct memory access (DMA) adapter includes the DMA adapter incrementing from a sub-head pointer, a sub-tail pointer until encountering an out-of-sequence packet. The DMA adapter also consumes packets between the sub-head pointer and the sub-tail pointer including incrementing with the consumption of each packet, the sub-head pointer until determining that the sub-head pointer is equal to the sub-tail pointer. In response to determining that the sub-head pointer is equal to the sub-tail pointer, the DMA adapter determines whether the head pointer is pointing to the next in-sequence packet. If the head pointer is pointing to the next in-sequence packet, the DMA adapter resets the sub-head pointer and the sub-tail pointer to the head pointer. If the head pointer is not pointing to the next in-sequence packet, the DMA adapter resets the sub-head pointer and the sub-tail pointer to the next in-sequence packet.
    Type: Grant
    Filed: January 7, 2014
    Date of Patent: October 13, 2015
    Assignee: International Business Machines Corporation
    Inventor: Michael A. Blocksome
  • Patent number: 9152457
    Abstract: A method for executing a plurality of processing requests performed by a physical computing system that is programmed to execute the processing requests for clients includes, with the physical computing system, assigning an identification number to a new processing request; with the physical computing system, placing the new processing request into a process eligible group if the identification number of the new processing request meets a criterion; and with the physical computing system, placing the processing request into a queued group if the identification number of the processing request does not meet the criterion.
    Type: Grant
    Filed: May 7, 2010
    Date of Patent: October 6, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Geoffrey Martin Winn, Neil George Young
  • Patent number: 9141683
    Abstract: Distributed computer systems prepare and instantiate snapshots by processing sets of nodes representing computer resources that are portions of a larger system. A user may choose to prepare or instantiate a snapshot containing all or only a portion of the data within the distributed computer system, such as a template of the distributed computer system. A template snapshot may be available in an electronic marketplace for other users to purchase and instantiate into a replica of the distributed computer system.
    Type: Grant
    Filed: September 23, 2013
    Date of Patent: September 22, 2015
    Assignee: Amazon Technologies, Inc.
    Inventors: Aparna Nagargadde, Michael Brooke Furr
  • Patent number: 9143440
    Abstract: In distributed object computing, messages from a source node to a destination node are often required to be routed via one or more intermediate nodes. In order to enhance efficiency of the relay process, a message envelope of a message may include a node list field that specifies the routing path of the message. The communication protocol for communicating the message may specify that when a message is received into a particular node, the node analyzes the node list field. If the identity of the node is last in the node list field, then the node is the destination node and thus the node unmarshals the message. Otherwise, the node forwards the message to the next node in the field list without unmarshalling the message.
    Type: Grant
    Filed: April 2, 2011
    Date of Patent: September 22, 2015
    Assignee: Open Invention Network, LLC
    Inventors: Qin Ye, Robert W. Peterson, Thomas T. Wheeler
  • Patent number: 9141449
    Abstract: A server node can monitor the status of servers in a server cluster. The node may receive an alert indicating that a server in the server cluster is unavailable. In response to the alert, the node can send instructions that cause pending remote procedure call requests to be canceled and then reissued to another server in the server cluster instead of to the first server.
    Type: Grant
    Filed: October 30, 2009
    Date of Patent: September 22, 2015
    Assignee: Symantec Corporation
    Inventors: Nagaraj Shyam, Craig Harmer, Ken Beck
  • Patent number: 9043796
    Abstract: Through an asynchronous callback enhancement, a thread makes a non-blocking request (e.g., send, receive, I/O) to a message passing interface library, and a callback routine is associated with the request as an asynchronous callback to the thread. The callback is queued for execution in the requesting thread and so has a deterministic execution context. Callback queuing may occur in response to another thread detecting that the request is complete. Further control over callback execution is provided by state transitions which determine whether the thread is open to processing (e.g., executing) an asynchronous callback. Callback association is done by a broad or by narrow association routines. An application which has processes organized in ranks, each including a communication thread with associated callback(s), and multiple worker threads. Interruptible wait enhancements may also be present.
    Type: Grant
    Filed: April 7, 2011
    Date of Patent: May 26, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventor: Fabian Samuel Tillier
  • Patent number: 9038093
    Abstract: Systems and methods for retrieving service request messages stored in a messaging queue and received by a queue in real-time. The service request messages are retrieved using a plurality of threads that comprise at least one retrieval criteria. Service request messages may be retrieved from the message queue or retrieved as they are received by the message queue in real-time using criteria in addition to or instead of the arrival time of the service request message which may also be referred to as the put-time. Service request messages may be requested and retrieved in an iterative process wherein multiple threads execute consecutively, concurrently, or a combination of both, in order to retrieve service request messages requested by an application.
    Type: Grant
    Filed: March 11, 2013
    Date of Patent: May 19, 2015
    Assignee: Sprint Communications Company L.P.
    Inventor: Mark D. Leonard
  • Patent number: 9027034
    Abstract: A method of communication in at least one electronic device is presented. In the method, a first execution thread and a second execution thread are created in the at least one electronic device. Also created is a message service for receiving messages for the first thread. A message to be transferred from the second thread to the message service of the first thread is generated. One of multiple data transfer mechanisms is selected for transferring the message from the second thread to the message service of the first thread based on a relationship between the first and second threads. This relationship may be one in which the first and second threads are executing within a single process, within different processes of the same device, or within different devices. The message is transferred to the message service of the first thread using the selected data transfer mechanism and processed in the first thread.
    Type: Grant
    Filed: July 29, 2010
    Date of Patent: May 5, 2015
    Assignee: Echostar Technologies, L.L.C.
    Inventors: Shiqiang Chu, Kan Man Wong, Mark E. Templeman
  • Patent number: 9027035
    Abstract: The techniques described herein implement an operating system that can reliably process time sensitive information in non real-time manner. Thus, the operating system described herein is capable of processing an instance of time sensitive input during a time period after the instance of time sensitive input is received (e.g., at a future point in time). To accomplish this, the techniques timestamp each instance of time sensitive input when it is received at a device. The techniques then store the timestamped instance of time sensitive input in a temporary queue, and make the timestamped instance available to the operating system at a time period after the time period when it is received, as indicated by the timestamp. Additional techniques described herein prioritize the activation of a driver configured to receive the time sensitive information during a boot sequence or a reboot sequence.
    Type: Grant
    Filed: December 17, 2012
    Date of Patent: May 5, 2015
    Assignee: Itron, Inc.
    Inventors: Samuel Lee Whitfield, Gregory Shane Barrett, Michael Clarence Miller, Kevin David Guthrie
  • Patent number: 9009730
    Abstract: Transactional capable queuing is provided. A queue having an ordered list of messages is provided. A get cursor operation is provided within the queue to point to a current starting place for a getting application to start searching for a message to retrieve. A first lock is provided for putting operations, in response to there being more than one putting application, to ensure only one application is putting to the queue at a time. A second lock is provided for getting operations, in response to there being more than one getting application, to ensure that only one application is getting from the queue at a time. Putting applications and getting applications are synchronized to check and update the get cursor operation.
    Type: Grant
    Filed: January 30, 2014
    Date of Patent: April 14, 2015
    Assignee: International Business Machines Corporation
    Inventors: Ian C. Edwards, Jonathan Levell, Trevor Lobban, Andrew J. Schofield
  • Patent number: 9009702
    Abstract: Methods and systems for application-driven polling of shared device queues are provided. One or more applications running in non-virtualized or virtualized computing environments may be adapted to enable methods for polling shared device queues. Applications adapted to operate in a polling mode may transmit a request to initiate polling of shared device queues, wherein operating in the polling mode disables corresponding device interrupts. Applications adapted to operate in a polling mode may be regulated by one or more predefined threshold limitations.
    Type: Grant
    Filed: November 30, 2011
    Date of Patent: April 14, 2015
    Assignee: Red Hat Israel, Ltd.
    Inventor: Michael Tsirkin