Patents by Inventor Youssef Barakat

Youssef Barakat 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: 10339295
    Abstract: A computing system includes one or more processors and a storage device that stores computer executable instructions that can be executed by the processors to cause the computing system to perform the following. The system generates a work tracking information ticket for a first system entity. The system assigns the work tracking information ticket to the first system entity. The system passes the work tracking information ticket to one or more second system entities. The system validates the work tracking information ticket. The validated work tracking information ticket informs that the one or more second system entities are performing work on behalf of the first system entity.
    Type: Grant
    Filed: July 28, 2016
    Date of Patent: July 2, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jon Robert Berry, Youssef Barakat, Yevgeniy M. Bak, Mehmet Iyigun, Pedro Miguel Sequeira de Justo Teixeira
  • Patent number: 10157155
    Abstract: An operating system includes an interrupt router that dynamically steers each interrupt to one or more processors within set of processors based on overall load information from the set of processors. An interrupt source is assigned to a processor based on the load imposed by the interrupt source and the target overall load for the processor. For example, each processor can maintain information about each interrupt it processes over time. The operating system receives this historical load information to determine an expected load for interrupts of a given type from a given device, an overall load on the system, and a target load for each processor. Given a set of interrupt sources, their expected loads, and target load for each processor, each interrupt source can be assigned dynamically to a processor during runtime of the system. These assignments can be changed given current operating conditions of the system.
    Type: Grant
    Filed: August 19, 2016
    Date of Patent: December 18, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrew Raffman, Minsang Kim, Jason Wohlgemuth, Tristan Brown, Youssef Barakat, Omid Fatemieh
  • Patent number: 10097513
    Abstract: Constructs to define a Trusted Execution Environment Driver that can implement a standard communication interface in a first environment for discovering and/or exchanging messages with secure applications/services executed in a Trusted Execution Environment (TrEE). The first environment can represent an environment with a different security policy from the TrEE.
    Type: Grant
    Filed: September 14, 2014
    Date of Patent: October 9, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Youssef Barakat, Kinshuman Kinshumann, Brian Perkins, Jinsub Moon
  • Patent number: 9996329
    Abstract: Various systems and methods for translating atomic read-modify-write accesses are described herein. In one example, a method includes determining that a machine instruction of a first language specifies an atomic read-modify-write access. The method includes generating machine instructions of the second language to perform an atomic access for the address if the address is aligned. The method includes generating machine instructions of a second language to acquire a global lock if the address is unaligned. Additionally, the method includes generating machine instructions of the second language to perform a non-atomic access for the address if the address is unaligned. Also, the method includes generating machine instructions of the second language to release the global lock if the address is unaligned.
    Type: Grant
    Filed: February 16, 2016
    Date of Patent: June 12, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Clarence Dang, Youssef Barakat, Arun Kishan
  • Publication number: 20180032378
    Abstract: A computing system includes one or more processors and a storage device that stores computer executable instructions that can be executed by the processors to cause the computing system to perform the following. The system generates a work tracking information ticket for a first system entity. The system assigns the work tracking information ticket to the first system entity. The system passes the work tracking information ticket to one or more second system entities. The system validates the work tracking information ticket. The validated work tracking information ticket informs that the one or more second system entities are performing work on behalf of the first system entity.
    Type: Application
    Filed: July 28, 2016
    Publication date: February 1, 2018
    Inventors: Jon Robert Berry, Youssef Barakat, Yevgeniy M. Bak, Mehmet lyigun, Pedro Miguel Sequeira de Justo Teixeira
  • Publication number: 20170235557
    Abstract: Various systems and methods for translating atomic read-modify-write accesses are described herein. In one example, a method includes determining that a machine instruction of a first language specifies an atomic read-modify-write access. The method includes generating machine instructions of the second language to perform an atomic access for the address if the address is aligned. The method includes generating machine instructions of a second language to acquire a global lock if the address is unaligned. Additionally, the method includes generating machine instructions of the second language to perform a non-atomic access for the address if the address is unaligned. Also, the method includes generating machine instructions of the second language to release the global lock if the address is unaligned.
    Type: Application
    Filed: February 16, 2016
    Publication date: August 17, 2017
    Applicant: Microsoft Technology Licensing, LLC.
    Inventors: Clarence Dang, Youssef Barakat, Arun Kishan
  • Publication number: 20160357689
    Abstract: An operating system includes an interrupt router that dynamically steers each interrupt to one or more processors within set of processors based on overall load information from the set of processors. An interrupt source is assigned to a processor based on the load imposed by the interrupt source and the target overall load for the processor. For example, each processor can maintain information about each interrupt it processes over time. The operating system receives this historical load information to determine an expected load for interrupts of a given type from a given device, an overall load on the system, and a target load for each processor. Given a set of interrupt sources, their expected loads, and target load for each processor, each interrupt source can be assigned dynamically to a processor during runtime of the system. These assignments can be changed given current operating conditions of the system.
    Type: Application
    Filed: August 19, 2016
    Publication date: December 8, 2016
    Inventors: Andrew Raffman, Minsang Kim, Jason Wohlgemuth, Tristan Brown, Youssef Barakat, Omid Fatemieh
  • Patent number: 9424212
    Abstract: An operating system is provided in which an interrupt router dynamically steers each interrupt to one or more processors within set of processors based on overall load information from the set of processors. An interrupt source is assigned to a processor based on the load imposed by the interrupt source and the target overall load for the processor. For example, each processor can maintain information about each interrupt it processes over time. The operating system receives this historical load information to determine an expected load for interrupts of a given type from a given device, an overall load on the system, and a target load for each processor. Given a set of interrupt sources, their expected loads, and target load for each processor, each interrupt source can be assigned dynamically to a processor during runtime of the system. On a regular basis, these assignments can be changed given current operating conditions of the system.
    Type: Grant
    Filed: June 13, 2013
    Date of Patent: August 23, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrew Raffman, Minsang Kim, Jason Wohlgemuth, Tristan Brown, Youssef Barakat, Omid Fatemieh
  • Patent number: 9411755
    Abstract: Systems and methods for debouncing a signal line within a computer device are provided. The mechanical nature of physical buttons and switches oftentimes present irregular or noisy signals on a signal line when depressed by a user. Thus, noise and/or irregular waveforms may be present on a signal line that is monitored to produce interrupt signals, when deemed valid and genuine. In many embodiments given herein, debounce modules and techniques set a debounce interval timer and/or a noise filtering interval timer in which debounce modules and/or techniques may note whether the signal line is still asserted (e.g., possibly a genuine interrupt signal) during the debounce interval timer and stable (e.g., no further interrupts have fired) during the noise filtering interval timer.
    Type: Grant
    Filed: April 21, 2013
    Date of Patent: August 9, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Murali Ravirala, Omid Fatemieh, Gabriel Knezek, Youssef Barakat
  • Publication number: 20160080320
    Abstract: Constructs to define a Trusted Execution Environment Driver that can implement a standard communication interface in a first environment for discovering and/or exchanging messages with secure applications/services executed in a Trusted Execution Environment (TrEE). The first environment can represent an environment with a different security policy from the TrEE.
    Type: Application
    Filed: September 14, 2014
    Publication date: March 17, 2016
    Inventors: Youssef Barakat, Kinshuman Kinshumann, Brian Perkins, Jinsub Moon
  • Publication number: 20140372649
    Abstract: An operating system is provided in which an interrupt router dynamically steers each interrupt to one or more processors within set of processors based on overall load information from the set of processors. An interrupt source is assigned to a processor based on the load imposed by the interrupt source and the target overall load for the processor. For example, each processor can maintain information about each interrupt it processes over time. The operating system receives this historical load information to determine an expected load for interrupts of a given type from a given device, an overall load on the system, and a target load for each processor. Given a set of interrupt sources, their expected loads, and target load for each processor, each interrupt source can be assigned dynamically to a processor during runtime of the system. On a regular basis, these assignments can be changed given current operating conditions of the system.
    Type: Application
    Filed: June 13, 2013
    Publication date: December 18, 2014
    Inventors: Andrew Raffman, Minsang Kim, Jason Wohlgemuth, Tristan Brown, Youssef Barakat, Omid Fatemieh
  • Publication number: 20140317327
    Abstract: Systems and methods for debouncing a signal line within a computer device are provided. The mechanical nature of physical buttons and switches oftentimes present irregular or noisy signals on a signal line when depressed by a user. Thus, noise and/or irregular waveforms may be present on a signal line that is monitored to produce interrupt signals, when deemed valid and genuine. In many embodiments given herein, debounce modules and techniques set a debounce interval timer and/or a noise filtering interval timer in which debounce modules and/or techniques may note whether the signal line is still asserted (e.g., possibly a genuine interrupt signal) during the debounce interval timer and stable (e.g., no further interrupts have fired) during the noise filtering interval timer.
    Type: Application
    Filed: April 21, 2013
    Publication date: October 23, 2014
    Applicant: Microsoft Corporation
    Inventors: Murali Ravirala, Omid Fatemieh, Gabriel Knezek, Youssef Barakat
  • Publication number: 20070101343
    Abstract: Systems and methods for rebootless updating of a IHV display driver are disclosed. According to such a method, first, the operating system stops the driver from running. Second, the system switches over to an interim or temporary display driver, which be a default driver provided with the operating system. Third, the new hardware-specific driver is started. Thus, a hardware-specific display driver may be updated without rebooting.
    Type: Application
    Filed: October 31, 2005
    Publication date: May 3, 2007
    Applicant: Microsoft Corporation
    Inventors: Marcus Andrews, Max McMullen, Sameer Nene, Youssef Barakat, Ameet Chitre