Patents by Inventor Varun Jain

Varun Jain 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: 10474521
    Abstract: A system includes: at least one processor running instances of two or more services. Instances of a first service are dependent upon instances of a second service. A fault-injection manager, based on data in a service directory indicative of dependencies of services of the system, determines a fault-inducing condition to inject into the system and injects the fault-inducing condition into the system. A health monitoring manager detects failures in the system and identifies the first service as vulnerable to the fault-inducing condition when the fault-inducing condition causes an instance of the second service to fail.
    Type: Grant
    Filed: August 9, 2017
    Date of Patent: November 12, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Chetan Pentam Raghavendra, Dmitri A. Klementiev, Varun Jain, Michail Zervos, Dhruv Gakkhar, Satya Sudha Kolluru, Lenina Devi Thangavel
  • Patent number: 10467126
    Abstract: A system determines a topology of a distributed system and determines, based on the topology, one or more injection points in the distributed system to inject failure scenarios. Each failure scenario including one or more faults and parameters for each of the faults. The system prioritizes the failure scenarios and injects a failure scenario from the prioritized failure scenarios into the distributed system via the one or more injection points. The system determines whether the injected failure scenario causes a response of the distributed system to fall below a predetermined level. The system determines resiliency of the distributed system to one or more faults in the injected failure scenario based on whether the injected failure scenario causes the response of the distributed system to fall below the predetermined level.
    Type: Grant
    Filed: March 31, 2017
    Date of Patent: November 5, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Dinko Papak, Michail Zervos, Dmitri A. Klementiev, Dhruv Gakkhar, Varun Jain, LeninaDevi Thangavel, Igor Sakhnov
  • Publication number: 20190288689
    Abstract: An extended General Purpose Input/Output (eGPIO) scheme is disclosed. In some implementations, an input/output (I/O) boundary scan cell comprises an output path to route output signals from a first voltage domain and signals from a second voltage domain to an I/O pad operating in a pad voltage domain, the output path having a first level shifter to up shift the output signals from the first voltage domain or the second voltage domain to the pad voltage domain; an input path to receive input signals from the I/O pad, the input path having a second level shifter to down shift the input signals from the pad voltage domain to the second voltage domain; and test logic to test signals in the first voltage domain and the second voltage domain.
    Type: Application
    Filed: June 6, 2019
    Publication date: September 19, 2019
    Inventors: Varun JAIN, Brent DUCKERING
  • Patent number: 10387231
    Abstract: A method and system for assessing resiliency of a system is provided. A fault injection system may, for each of a plurality of dimensions of a fault profile, access an indication of possible values for the dimension, which may be specified by a user. The fault injection system may, for each of a plurality of fault profiles, automatically create the fault profile by, for each of the plurality of dimensions, selecting by the computing system a possible value for that dimension. For at least some of the fault profiles, the fault injection system injects a fault based on the fault profile into the system and determines whether a failure was detected while the fault was injected.
    Type: Grant
    Filed: September 22, 2016
    Date of Patent: August 20, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Dinko Papak, LeninaDevi Thangavel, Richard Gregory Endean, Jr., Dmitri A. Klementiev, Dhruv Gakkhar, Varun Jain, Michail Zervos
  • Publication number: 20190236177
    Abstract: Methods, systems, apparatuses, and computer program products are described herein that enable detecting anomalies in time series. An anomaly detection technique is selected from a plurality of detection techniques, and is applied to a first time-series data set (having a first set of dimensions). In response to detecting an anomaly in the time-series data set, the anomaly detection technique is applied to a second time-series data set that is a subset of the first time-series data set. The first time-series data set includes the first set of dimensions plus one or more additional dimensions.
    Type: Application
    Filed: January 29, 2018
    Publication date: August 1, 2019
    Inventors: Varun Jain, Dmitri A. Klementiev, Igor Sakhnov, Dinko Papak, LeninaDevi Thangavel, Michail Zervos, Dhruv Gakkhar, Kateryna Boikovska
  • Patent number: 10366231
    Abstract: According to one embodiment, an apparatus comprises a first analysis engine and a second analysis engine. The first analysis engine analyzes an object to determine if the object is malicious. The second analysis engine is configured to (i) receive results of the analysis of the object from the first analysis engine and (ii) analyze, based at least in part on the analysis by the first analysis engine, whether the object is malicious in accordance with a predictive model. Responsive to the first analysis engine and the second analysis engine differing in determinations as to whether the object is malicious, information associated with an analysis of the object by at least one of the first analysis engine and the second analysis engine is uploaded for determining whether an update of the predictive model is to occur. An update of the predictive model is subsequently received by the classification engine.
    Type: Grant
    Filed: June 26, 2017
    Date of Patent: July 30, 2019
    Assignee: FireEye, Inc.
    Inventors: Abhishek Singh, Ali Mesdaq, Anirban Das, Varun Jain
  • Patent number: 10355693
    Abstract: An extended General Purpose Input/Output (eGPIO) scheme is disclosed. In some implementations, an input/output (I/O) boundary scan cell comprises an output path to route output signals from a first voltage domain and signals from a second voltage domain to an I/O pad operating in a pad voltage domain, the output path having a first level shifter to up shift the output signals from the first voltage domain or the second voltage domain to the pad voltage domain; an input path to receive input signals from the I/O pad, the input path having a second level shifter to down shift the input signals from the pad voltage domain to the second voltage domain; and test logic to test signals in the first voltage domain and the second voltage domain.
    Type: Grant
    Filed: August 13, 2018
    Date of Patent: July 16, 2019
    Assignee: QUALCOMM Incorporated
    Inventors: Varun Jain, Brent Duckering
  • Publication number: 20180373697
    Abstract: Systems, methods and apparatus for authoring an electronic message. In one example, the system, method, and apparatus include receiving an electronic message; categorizing the electronic message based on a message layout type associated with the electronic message; determining, with a sentiment analyzer, a sentiment type and a sentiment score associated with the electronic message; identifying a first plurality of words in the electronic message associated with the sentiment type; and outputting one or more selected from the group consisting of the message layout type, the sentiment type, and the sentiment score associated with the electronic message.
    Type: Application
    Filed: June 22, 2017
    Publication date: December 27, 2018
    Inventor: Varun JAIN
  • Publication number: 20180285239
    Abstract: A system determines a topology of a distributed system and determines, based on the topology, one or more injection points in the distributed system to inject failure scenarios. Each failure scenario including one or more faults and parameters for each of the faults. The system prioritizes the failure scenarios and injects a failure scenario from the prioritized failure scenarios into the distributed system via the one or more injection points. The system determines whether the injected failure scenario causes a response of the distributed system to fall below a predetermined level. The system determines resiliency of the distributed system to one or more faults in the injected failure scenario based on whether the injected failure scenario causes the response of the distributed system to fall below the predetermined level.
    Type: Application
    Filed: March 31, 2017
    Publication date: October 4, 2018
    Inventors: Dinko PAPAK, Michail ZERVOS, Dmitri A. KLEMENTIEV, Dhruv GAKKHAR, Varun JAIN, LeninaDevi THANGAVEL, Igor SAKHNOV
  • Publication number: 20180121601
    Abstract: A system, method and apparatus for executing a bioinformatics analysis on genetic sequence data is provided. Particularly, a genomics analysis platform for executing a sequence analysis pipeline is provided. The genomics analysis platform includes one or more of a first integrated circuit, where each first integrated circuit forms a central processing unit (CPU) that is responsive to one or more software algorithms that are configured to instruct the CPU to perform a first set of genomic processing steps of the sequence analysis pipeline.
    Type: Application
    Filed: October 27, 2017
    Publication date: May 3, 2018
    Inventors: Mark David Hahm, Jacobus de Beer, Varun Jain, Rami Mehio, Eric Ojard, Michael Ruehle, Amnon Ptashek, Severine Catreux, Arun Visvanath
  • Publication number: 20180060202
    Abstract: A method and system for assessing resiliency of a system is provided. A fault injection system may, for each of a plurality of dimensions of a fault profile, access an indication of possible values for the dimension, which may be specified by a user. The fault injection system may, for each of a plurality of fault profiles, automatically create the fault profile by, for each of the plurality of dimensions, selecting by the computing system a possible value for that dimension. For at least some of the fault profiles, the fault injection system injects a fault based on the fault profile into the system and determines whether a failure was detected while the fault was injected.
    Type: Application
    Filed: September 22, 2016
    Publication date: March 1, 2018
    Inventors: Dinko Papak, LeninaDevi Thangavel, Richard Gregory Endean, JR., Dmitri A. Klementiev, Dhruv Gakkhar, Varun Jain, Michail Zervos
  • Publication number: 20170337099
    Abstract: A system includes: at least one processor running instances of two or more services. Instances of a first service are dependent upon instances of a second service. A fault-injection manager, based on data in a service directory indicative of dependencies of services of the system, determines a fault-inducing condition to inject into the system and injects the fault-inducing condition into the system. A health monitoring manager detects failures in the system and identifies the first service as vulnerable to the fault-inducing condition when the fault-inducing condition causes an instance of the second service to fail.
    Type: Application
    Filed: August 9, 2017
    Publication date: November 23, 2017
    Inventors: Chetan Pentam RAGHAVENDRA, Dmitri A. KLEMENTIEV, Varun JAIN, Michail ZERVOS, Dhruv GAKKHAR, Satya Sudha KOLLURU, Lenina Devi THANGAVEL
  • Patent number: 9747153
    Abstract: Systems and methods disclosed herein are directed to creating a service directory of dependencies for services running on a system, wherein instances of a first service are dependent upon instances of a second service. The directory of dependencies comprises metadata associated with connections between the services. The system injects faults targeting all levels of the dependencies. The system is monitored to detect failures created by the faults. The injected faults are selected from transport layer faults, memory pressure, processor pressure, storage pressure, virtual machine restart, and virtual machine shut down. A domain name service is monitored to identify names that are resolved for the services. The service directory is then updated continuously with additional dependencies using information about the resolved names. The faults may be injected in a guided manner, wherein the scope of the faults is increased in steps over time to identify a failure point in the system.
    Type: Grant
    Filed: June 22, 2015
    Date of Patent: August 29, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Chetan Pentam Raghavendra, Dmitri A. Klementiev, Varun Jain, Michail Zervos, Dhruv Gakkhar, Satya Sudha Kolluru, Lenina Devi Thangavel
  • Publication number: 20170235479
    Abstract: A computer-implemented method for executing a default action on a touchscreen device is provided. The method includes receiving a touch input from a user on a touchscreen device and determining a context associated with the touch input. The context is associated with one or more actions including a default action. The method also includes determining that the received touch input comprises a default gesture, and performing the default action associated with the determined context. The default gesture may be a two-finger double-tap gesture. Systems and machine-readable media are also provided.
    Type: Application
    Filed: May 5, 2017
    Publication date: August 17, 2017
    Inventors: Fady Samuel, Varun Jain
  • Patent number: 9690933
    Abstract: According to one embodiment, an apparatus comprises a detection engine and a classification engine. The detection engine is responsible for analyzing an object to determine if the object is malicious. The classification engine is configured to (i) receive results of the analysis of the object conducted by the detection engine and (ii) analyze, based at least in part on the results from the detection engine, whether the object is malicious in accordance with a predictive model. Responsive to the detection engine and the classification engine differing in determinations as to whether the object is malicious, information associated with at least a portion of the results of the analysis of the object by at least one of the detection engine and the classification engine is uploaded for determining whether an update of the predictive model is to occur. An update of the predictive model is subsequently received by the classification engine.
    Type: Grant
    Filed: December 22, 2014
    Date of Patent: June 27, 2017
    Assignee: FireEye, Inc.
    Inventors: Abhishek Singh, Ali Mesdaq, Anirban Das, Varun Jain
  • Patent number: 9684398
    Abstract: A computer-implemented method for executing a default action on a touchscreen device is provided. The method includes receiving a touch input from a user on a touchscreen device and determining a context associated with the touch input. The context is associated with one or more actions including a default action. The method also includes determining that the received touch input comprises a default gesture, and performing the default action associated with the determined context. The default gesture may be a two-finger double-tap gesture. Systems and machine-readable media are also provided.
    Type: Grant
    Filed: August 6, 2012
    Date of Patent: June 20, 2017
    Assignee: Google Inc.
    Inventors: Fady Samuel, Varun Jain
  • Patent number: 9594904
    Abstract: According to one embodiment of the disclosure, a computerized method is described to detect a malicious object through its attempt to utilize reflection. The computerized method comprises receiving, by a network device, an object for analysis. Thereafter, the network device conducts a first analysis within a sandboxed environment. The first analysis determines whether the object is configured to utilize reflection. According to one embodiment, the first analysis involves analysis of the content of the object by a static analysis engine. Alternatively, or in addition to this analysis, the behavior of the object by an attempt to access a reflection API may determine that the object is utilizing reflection. Responsive to the network device determining that the object utilizes reflection, a second analysis is conducted to determine whether the object is malicious.
    Type: Grant
    Filed: April 23, 2015
    Date of Patent: March 14, 2017
    Assignee: FireEye, Inc.
    Inventors: Varun Jain, Abhishek Singh
  • Publication number: 20160371134
    Abstract: Systems and methods disclosed herein are directed to creating a service directory of dependencies for services running on a system, wherein instances of a first service are dependent upon instances of a second service. The directory of dependencies comprises metadata associated with connections between the services. The system injects faults targeting all levels of the dependencies. The system is monitored to detect failures created by the faults. The injected faults are selected from transport layer faults, memory pressure, processor pressure, storage pressure, virtual machine restart, and virtual machine shut down. A domain name service is monitored to identify names that are resolved for the services. The service directory is then updated continuously with additional dependencies using information about the resolved names. The faults may be injected in a guided manner, wherein the scope of the faults is increased in steps over time to identify a failure point in the system.
    Type: Application
    Filed: June 22, 2015
    Publication date: December 22, 2016
    Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventors: Chetan Pentam Raghavendra, Dmitri A. Klementiev, Varun Jain, Michail Zervos, Dhruv Gakkhar, Satya Sudha Kolluru, Lenina Devi Thangavel
  • Patent number: 9304656
    Abstract: Certain implementations of the disclosed technology may include systems and methods for object selection on presence-sensitive devices. According to an example implementation, a method is provided for outputting, by a computing device and for display, a view containing a first selectable object and a second selectable object; initiating a gesture selection mode in response to receipt of a selection gesture; receiving respective indications of a swipe gesture sequence; outputting, for display, an indication that the first and second selectable objects are selected in response to determining that a first portion of the swipe gesture sequence encircled the first and second selectable objects; and outputting, for display, an indication that the first selectable object is selected and the second selectable object is unselected in response to determining that a second portion of the swipe gesture sequence encircled the first selectable object and did not encircle the second selectable object.
    Type: Grant
    Filed: March 29, 2013
    Date of Patent: April 5, 2016
    Assignee: GOOGLE INC.
    Inventors: Robert John Kroeger, Fady Samuel, Varun Jain
  • Publication number: 20140352452
    Abstract: Systems and methods for materials testing are disclosed. According to one embodiment, a system for materials testing comprises a communication interface coupled to testing hardware, an electronic user interface for facilitating the input of production requirements and a specification, and a display device for displaying results of tests conducted on the testing hardware, wherein the results are based in part on the production requirements and specification.
    Type: Application
    Filed: May 28, 2013
    Publication date: December 4, 2014
    Inventor: Varun Jain