Patents by Inventor Sarath Madakasira

Sarath Madakasira 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: 11880231
    Abstract: Timekeeping on a computing device is deterministically performed by implementing two successive calls to a time function that returns current time based on a continuously running counter that is maintained in one or more cores of the device's CPU. The same fixed time computation parameters are used in each call, with the single variable being a value that is read from the counter. For the initial call to the time function, the processor optimizes the instruction execution by predicting the function's execution path based on observed patterns. As the instructions and data are already cached, and the processor has the results of the prior execution path prediction, the subsequent call executes quickly and predictably relative to the initial call while the processor remains in a working (i.e., non-sleep) state. The series of calls provides a deterministic time computation with improved accuracy by mitigating the unpredictability of processor sleep state delays.
    Type: Grant
    Filed: December 14, 2020
    Date of Patent: January 23, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sarath Madakasira, Keith Loren Mange
  • Publication number: 20220187867
    Abstract: Timekeeping on a computing device is deterministically performed by implementing two successive calls to a time function that returns current time based on a continuously running counter that is maintained in one or more cores of the device's CPU. The same fixed time computation parameters are used in each call, with the single variable being a value that is read from the counter. For the initial call to the time function, the processor optimizes the instruction execution by predicting the function's execution path based on observed patterns. As the instructions and data are already cached, and the processor has the results of the prior execution path prediction, the subsequent call executes quickly and predictably relative to the initial call while the processor remains in a working (i.e., non-sleep) state. The series of calls provides a deterministic time computation with improved accuracy by mitigating the unpredictability of processor sleep state delays.
    Type: Application
    Filed: December 14, 2020
    Publication date: June 16, 2022
    Inventors: Sarath Madakasira, Keith Loren Mange
  • Patent number: 11061433
    Abstract: Exposing a leap second to a plurality of applications includes identifying that a positive leap second should be added to the end of a chosen date. Based on the occurrence of the positive leap second, a first conversion component is exposed to a first application. The first conversion component presents, over a period of two seconds of actual time, a last second of the chosen date as if it is one second of system time. Based on the occurrence of the positive leap second, and based on a second application opting in to leap seconds, a second conversion component is exposed to the second application. The second conversion component presents an extra 61st second of system time at the end of a last minute of the chosen date.
    Type: Grant
    Filed: September 17, 2020
    Date of Patent: July 13, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Jason Lin, Mehmet Iyigun, Daniel F. Cuomo, Jr., Keith Loren Mange, Sarath Madakasira, Travis Luke
  • Publication number: 20210004044
    Abstract: Exposing a leap second to a plurality of applications includes identifying that a positive leap second should be added to the end of a chosen date. Based on the occurrence of the positive leap second, a first conversion component is exposed to a first application. The first conversion component presents, over a period of two seconds of actual time, a last second of the chosen date as if it is one second of system time. Based on the occurrence of the positive leap second, and based on a second application opting in to leap seconds, a second conversion component is exposed to the second application. The second conversion component presents an extra 61st second of system time at the end of a last minute of the chosen date.
    Type: Application
    Filed: September 17, 2020
    Publication date: January 7, 2021
    Inventors: Jason LIN, Mehmet IYIGUN, Daniel F. CUOMO, JR., Keith Loren MANGE, Sarath MADAKASIRA, Travis LUKE
  • Patent number: 10809759
    Abstract: Exposing a leap second to a plurality of applications includes identifying a system setting enabling leap second support and that a positive leap second should be added to the end of a chosen date. Based on the system setting enabling leap second support and based on the occurrence of the positive leap second, a first conversion component is exposed to a first application. The first conversion component presents, over a period of two seconds of actual time, a last second of the chosen date as if it is one second of system time. Based on the system setting enabling leap second support, based on the occurrence of the positive leap second, and based on a second application opting in to leap seconds, a second conversion component is exposed to the second application. The second conversion component presents an extra 61st second of system time at the end of a last minute of the chosen date.
    Type: Grant
    Filed: September 4, 2018
    Date of Patent: October 20, 2020
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Jason Lin, Mehmet Iyigun, Daniel F. Cuomo, Jr., Keith Loren Mange, Sarath Madakasira, Travis Luke
  • Publication number: 20200073434
    Abstract: Exposing a leap second to a plurality of applications includes identifying a system setting enabling leap second support and that a positive leap second should be added to the end of a chosen date. Based on the system setting enabling leap second support and based on the occurrence of the positive leap second, a first conversion component is exposed to a first application. The first conversion component presents, over a period of two seconds of actual time, a last second of the chosen date as if it is one second of system time. Based on the system setting enabling leap second support, based on the occurrence of the positive leap second, and based on a second application opting in to leap seconds, a second conversion component is exposed to the second application. The second conversion component presents an extra 61st second of system time at the end of a last minute of the chosen date.
    Type: Application
    Filed: September 4, 2018
    Publication date: March 5, 2020
    Inventors: Jason LIN, Mehmet IYIGUN, Daniel F. CUOMO, JR., Keith Loren MANGE, Sarath MADAKASIRA, Travis LUKE
  • Patent number: 10069839
    Abstract: Establishing secure connections from a computing device to secure servers when the computing device starts with an incorrect system clock time that would ordinarily prohibit connection to the secure servers. A method includes attempting to access a plurality of secure servers. The method further includes, from each of the servers in the plurality of secure servers, receiving one or more certificates from the secure servers and metadata which includes a specification of time. The method further includes preventing secure applications from sending sensitive data to the plurality of secure servers until a system time has been approximated. The method further includes, from the secure specifications of time, approximating a current system time. The method further includes accessing another secure server using the approximated current system time and using the approximated current system time to validate a certificate from the other server.
    Type: Grant
    Filed: February 11, 2016
    Date of Patent: September 4, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Sarath Madakasira, Philip Joseph Hallin
  • Publication number: 20170237737
    Abstract: Establishing secure connections from a computing device to secure servers when the computing device starts with an incorrect system clock time that would ordinarily prohibit connection to the secure servers. A method includes attempting to access a plurality of secure servers. The method further includes, from each of the servers in the plurality of secure servers, receiving one or more certificates from the secure servers and metadata which includes a specification of time. The method further includes preventing secure applications from sending sensitive data to the plurality of secure servers until a system time has been approximated. The method further includes, from the secure specifications of time, approximating a current system time. The method further includes accessing another secure server using the approximated current system time and using the approximated current system time to validate a certificate from the other server.
    Type: Application
    Filed: February 11, 2016
    Publication date: August 17, 2017
    Inventors: Sarath Madakasira, Philip Joseph Hallin
  • Patent number: 8713535
    Abstract: Use of software applications is detected by categorizing components of applications into a usage manifest and implementing a usage detection background service on a client PC that monitors the components according to the usage manifest. The application components are categorized based on the mode of user interaction as well as the component's correlation to active use of an application. The background service tracks events and activities associated with the application components to generate usage metrics that include the frequency of unique launches of an application and the duration of each unique use. A usage manager for the background service may utilize the usage metrics for a component independently, or combine metrics for multiple components in cases where applications work in an interactive manner (such as a plug-in to a web browser) in order to compute application usage by comparing the metrics against predefined thresholds.
    Type: Grant
    Filed: June 30, 2008
    Date of Patent: April 29, 2014
    Assignee: Microsoft Corporation
    Inventors: Nipoon Malhotra, Ram Viswanathan, Vikram Kakumani, Mauktik H. Gandhi, Sarath Madakasira, Yiming Li, Kiran Sagi
  • Publication number: 20130347063
    Abstract: Sharing security claims across different security contexts. A method includes, for a first security context, identifying a first set of security claims. The method further includes for the first security context identifying a second set of security claims from the first set of security claims that is allowed to be sent from the first security context. The first set of security claims is modified to create the second set of security claims. For a second security context, security claim requirements are identified. The second set of security claims is modified to satisfy the security claim requirements for the second security context.
    Type: Application
    Filed: June 21, 2012
    Publication date: December 26, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Sarath Madakasira, Siddharth Bhai, James J. Simmons, Ryan J. Fairfax, Qi Cao, Arun K. Nanda, Mark Fishel Novak
  • Publication number: 20090327482
    Abstract: Use of software applications is detected by categorizing components of applications into a usage manifest and implementing a usage detection background service on a client PC that monitors the components according to the usage manifest. The application components are categorized based on the mode of user interaction as well as the component's correlation to active use of an application. The background service tracks events and activities associated with the application components to generate usage metrics that include the frequency of unique launches of an application and the duration of each unique use. A usage manager for the background service may utilize the usage metrics for a component independently, or combine metrics for multiple components in cases where applications work in an interactive manner (such as a plug-in to a web browser) in order to compute application usage by comparing the metrics against predefined thresholds.
    Type: Application
    Filed: June 30, 2008
    Publication date: December 31, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Nipoon Malhotra, Ram Viswanathan, Vikram Kakumani, Mauktik H. Gandhi, Sarath Madakasira, Yiming Li, Kiran Sagi