Patents by Inventor Haryadi Gunawi

Haryadi Gunawi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11139959
    Abstract: An embodiment involves receiving a request to write data to a memory unit. The memory unit is divided into one or more logical blocks, each subdivided into groups of sub-blocks encrypted in accordance with a stream cipher. The memory unit maintains a transaction journal that marks each sub-block as dirty or clean. The memory unit stores keycount values for each of the logical blocks. The embodiment also involves: determining that the request seeks to write a portion of the data to a particular sub-block marked as dirty in the transaction journal, decrypting the particular logical block in accordance with the stream cipher, writing the portion of the data to the particular sub-block, incrementing the keycount value of the particular logical block, encrypting the particular logical block using the stream cipher, a key, and the keycount value, and writing the particular logical block to the memory unit.
    Type: Grant
    Filed: February 1, 2019
    Date of Patent: October 5, 2021
    Assignee: The University of Chicago
    Inventors: Bernard Dickens, III, Haryadi Gunawi, Ariel Feldman, Henry Hoffmann
  • Patent number: 10599551
    Abstract: A method for detecting distributed concurrency errors in a distributed cloud computing system includes tracing operations that access objects in functions involving inter-process messaging, applying a set of happens-before rules to the traced operations. Analyzing the traced operations to identify concurrent operations that access a common object to generate a list of potential distributed concurrency errors (DCbugs). Pruning the list of DCbugs to remove DCbugs having only local effect and that do not generate run-time errors.
    Type: Grant
    Filed: August 3, 2017
    Date of Patent: March 24, 2020
    Assignees: The University of Chicago, Futurewei Technologies, Inc.
    Inventors: Shan Lu, Haopeng Liu, Guangpu Li, Haryadi Gunawi, Chen Tian, Feng Ye
  • Patent number: 10599552
    Abstract: Described herein are systems and methods for distributed concurrency (DC) bug detection. The method includes identifying a plurality of nodes in a distributed computing cluster; identifying a plurality of messages to be transmitted during execution of an application by the distributed computing cluster; determining a set of orderings of the plurality of messages for DC bug detection, the set of orderings determined based upon the plurality of nodes and the plurality of messages; removing a subset of the orderings from the set of orderings based upon one or more of a state symmetry algorithm, a disjoint-update independence algorithm, or a zero-crash-impact reordering algorithm; and performing DC bug detection testing using the set of orderings after the subset of the orderings is removed from the set of orderings.
    Type: Grant
    Filed: April 25, 2018
    Date of Patent: March 24, 2020
    Inventors: Jeffrey Lukman, Huan Ke, Haryadi Gunawi, Feng Ye, Chen Tian, Shen Chi Chen
  • Publication number: 20190332518
    Abstract: Described herein are systems and methods for distributed concurrency (DC) bug detection. The method includes identifying a plurality of nodes in a distributed computing cluster; identifying a plurality of messages to be transmitted during execution of an application by the distributed computing cluster; determining a set of orderings of the plurality of messages for DC bug detection, the set of orderings determined based upon the plurality of nodes and the plurality of messages; removing a subset of the orderings from the set of orderings based upon one or more of a state symmetry algorithm, a disjoint-update independence algorithm, or a zero-crash-impact reordering algorithm; and performing DC bug detection testing using the set of orderings after the subset of the orderings is removed from the set of orderings.
    Type: Application
    Filed: April 25, 2018
    Publication date: October 31, 2019
    Inventors: Jeffrey Lukman, Huan Ke, Haryadi Gunawi, Feng Ye, Chen Tian, Shen Chi Chen
  • Publication number: 20190238312
    Abstract: An embodiment involves receiving a request to write data to a memory unit. The memory unit is divided into one or more logical blocks, each subdivided into groups of sub-blocks encrypted in accordance with a stream cipher. The memory unit maintains a transaction journal that marks each sub-block as dirty or clean. The memory unit stores keycount values for each of the logical blocks. The embodiment also involves: determining that the request seeks to write a portion of the data to a particular sub-block marked as dirty in the transaction journal, decrypting the particular logical block in accordance with the stream cipher, writing the portion of the data to the particular sub-block, incrementing the keycount value of the particular logical block, encrypting the particular logical block using the stream cipher, a key, and the keycount value, and writing the particular logical block to the memory unit.
    Type: Application
    Filed: February 1, 2019
    Publication date: August 1, 2019
    Inventors: Bernard Dickens, III, Haryadi Gunawi, Ariel Feldman, Henry Hoffmann
  • Publication number: 20180046565
    Abstract: A method for detecting distributed concurrency errors in a distributed cloud computing system includes tracing operations that access objects in functions involving inter-process messaging, applying a set of happens-before rules to the traced operations. Analyzing the traced operations to identify concurrent operations that access a common object to generate a list of potential distributed concurrency errors (DCbugs). Pruning the list of DCbugs to remove DCbugs having only local effect and that do not generate run-time errors.
    Type: Application
    Filed: August 3, 2017
    Publication date: February 15, 2018
    Inventors: Shan Lu, Haopeng Liu, Guangpu Li, Haryadi Gunawi, Chen Tian, Feng Ye
  • Patent number: 8789063
    Abstract: Systems and methods establish communication and control between various heterogeneous processors in a computing system so that an operating system can run an application across multiple heterogeneous processors. With a single set of development tools, software developers can create applications that will flexibly run on one CPU or on combinations of central, auxiliary, and peripheral processors. In a computing system, application-only processors can be assigned a lean subordinate kernel to manage local resources. An application binary interface (ABI) shim is loaded with application binary images to direct kernel ABI calls to a local subordinate kernel or to the main OS kernel depending on which kernel manifestation is controlling requested resources.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: July 22, 2014
    Assignee: Microsoft Corporation
    Inventors: Orion Hodson, Haryadi Gunawi, Galen C. Hunt
  • Publication number: 20080244507
    Abstract: Systems and methods establish communication and control between various heterogeneous processors in a computing system so that an operating system can run an application across multiple heterogeneous processors. With a single set of development tools, software developers can create applications that will flexibly run on one CPU or on combinations of central, auxiliary, and peripheral processors. In a computing system, application-only processors can be assigned a lean subordinate kernel to manage local resources. An application binary interface (ABI) shim is loaded with application binary images to direct kernel ABI calls to a local subordinate kernel or to the main OS kernel depending on which kernel manifestation is controlling requested resources.
    Type: Application
    Filed: March 30, 2007
    Publication date: October 2, 2008
    Applicant: Microsoft Corporation
    Inventors: Orion Hodson, Haryadi Gunawi, Galen C. Hunt
  • Publication number: 20080244599
    Abstract: Systems and methods establish communication and control between various heterogeneous processors in a computing system so that an operating system can run an application across multiple heterogeneous processors. With a single set of development tools, software developers can create applications that will flexibly run on one CPU or on combinations of central, auxiliary, and peripheral processors. In a computing system, application-only processors can be assigned a lean subordinate kernel to manage local resources. An application binary interface (ABI) shim is loaded with application binary images to direct kernel ABI calls to a local subordinate kernel or to the main OS kernel depending on which kernel manifestation is controlling requested resources.
    Type: Application
    Filed: March 30, 2007
    Publication date: October 2, 2008
    Applicant: Microsoft Corporation
    Inventors: Orion Hodson, Haryadi Gunawi, Galen C. Hunt