Patents by Inventor Michael D LeMay

Michael D LeMay 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: 11996190
    Abstract: The present disclosure relates to aggregating and sharing wellness data. The wellness data can be received by a user device from any number of sensors external or internal to the user device, from a user manually entering the wellness data, or from other users or entities. The user device can securely store the wellness data on the user device and transmit the wellness data to be stored on a remote database. A user of the device can share some or all of the wellness data with friends, relatives, caregivers, healthcare providers, or the like. The user device can further display a user's wellness data in an aggregated view of different types of wellness data. Wellness data of other users can also be viewed if authorizations from those users have been received.
    Type: Grant
    Filed: March 16, 2020
    Date of Patent: May 28, 2024
    Assignee: Apple Inc.
    Inventors: Aroon Pahwa, Rebecca L. Weber, Divya Nag, Christopher D. Soli, Lawrence Y. Yang, Stephen O. Lemay, Kevin M. Lynch, Stacey F. Lysik, Dylan R. Edwards, Zachury B. Minjack, Zachery W. Kennedy, Adam L. Beberg, Dennis S. Park, Afshad M. Mistri, Anton M. Davydov, Jay K. Blahnik, Christine M. Eun, James H. Foster, Stephanie M. Greer, Daniel S. Keen, Natalia C. Maric, Gregory B. Novick, Michael O'Reilly, Donald W. Pitschel
  • Publication number: 20240152245
    Abstract: A computer system displays a first object that includes at least a first portion of the first object and a second portion of the first object and detects a first gaze input that meets first criteria, wherein the first criteria require that the first gaze input is directed to the first portion of the first object in order for the first criteria to be met. In response, the computer system displays a first control element that corresponds to a first operation associated with the first object, wherein the first control element was not displayed prior to detecting that the first gaze input met the first criteria, and detects a first user input directed to the first control element. In response to detecting the first user input directed to the first control element, the computer system performs the first operation with respect to the first object.
    Type: Application
    Filed: September 21, 2023
    Publication date: May 9, 2024
    Inventors: Lee S. Broughton, Israel Pastrana Vicente, Matan Stauber, Miquel Estany Rodriguez, James J. Owen, Jonathan R. Dascola, Stephen O. Lemay, Christian Schnorr, Zoey C. Taylor, Jay Moon, Benjamin H. Boesel, Benjamin Hylak, Richard D. Lyons, Willliam A. Sorrentino, III, Lynn I. Streja, Jonathan Ravasz, Nathan Gitter, Peter D. Anton, Michael J. Rockwell, Peter L. Hajas, Evgenii Krivoruchko, Mark A. Ebbole, James Magahern, Andrew J. Sawyer, Christopher D. McKenzie, Michael E. Buerli, Olivier D. R. Gutknecht
  • Patent number: 11972126
    Abstract: Technologies disclosed herein provide one example of a system that includes processor circuitry to be communicatively coupled to a memory circuitry. The processor circuitry is to receive a memory access request corresponding to an application for access to an address range in a memory allocation of the memory circuitry and to locate a metadata region within the memory allocation. The processor circuitry is also to, in response to a determination that the address range includes at least a portion of the metadata region, obtain first metadata stored in the metadata region, use the first metadata to determine an alternate memory address in a relocation region, and read, at the alternate memory address, displaced data from the portion of the metadata region included in the address range of the memory allocation. The address range includes one or more bytes of an expected allocation region of the memory allocation.
    Type: Grant
    Filed: September 10, 2021
    Date of Patent: April 30, 2024
    Assignee: Intel Corporation
    Inventors: David M. Durham, Michael D. LeMay, Sergej Deutsch, Joydeep Rakshit, Anant Vithal Nori, Jayesh Gaur, Sreenivas Subramoney
  • Publication number: 20240103682
    Abstract: A computer system displays a first application user interface at a first location in a three-dimensional environment. While displaying the first application user interface at the first location in the three-dimensional environment, the computer system detects, at a first time, a first input corresponding to a request to close the first application user interface. In response to detecting the first input corresponding to a request to close the first application user interface: the computer system closes the first application user interface, including ceasing to display the first application user interface in the three-dimensional environment; and, in accordance with a determination that respective criteria are met, the computer system displays a home menu user interface at a respective home menu position that is determined based on the first location of the first application user interface in the three-dimensional environment.
    Type: Application
    Filed: September 21, 2023
    Publication date: March 28, 2024
    Inventors: Stephen O. Lemay, Zoey C. Taylor, Benjamin Hylak, Willliam A. Sorrentino, III, Jonathan Ravasz, Peter D. Anton, Michael J. Rockwell
  • Patent number: 11940927
    Abstract: Techniques for memory tagging are disclosed. In the illustrative embodiment, 16 bits of a virtual memory address are used as memory tag bits. In a page table entry corresponding to the virtual memory address, page tag bits indicate which of the 16 bits of the virtual memory address are to be sent to the memory as memory tag bits when a memory operation is requested on the virtual memory address. The memory can then compare the memory tag bits sent with the physical memory address to memory tag bits stored on the memory that correspond to the physical memory address. If the memory tag bits match, then the operation is allowed to proceed.
    Type: Grant
    Filed: June 14, 2022
    Date of Patent: March 26, 2024
    Assignee: Intel Corporation
    Inventors: David M. Durham, Michael D. LeMay
  • Patent number: 11784786
    Abstract: Technologies disclosed herein provide one example of a processor that includes a register to store a first encoded pointer for a first memory allocation for an application and circuitry coupled to memory. Size metadata is stored in first bits of the first encoded pointer and first memory address data associated with the first memory allocation is stored in second bits of the first encoded pointer. The circuitry is configured to determine a first memory address of a first marker region in the first memory allocation, obtain current data from the first marker region at the first memory address, compare the current data to a reference marker stored separately from the first memory allocation, and determine that the first memory allocation is in a first state in response to a determination that the current data corresponds to the reference marker.
    Type: Grant
    Filed: March 26, 2021
    Date of Patent: October 10, 2023
    Assignee: Intel Corporation
    Inventors: Sergej Deutsch, David M. Durham, Karanvir S. Grewal, Michael D. LeMay, Michael E. Kounavis
  • Patent number: 11711201
    Abstract: In one embodiment, an encoded pointer is constructed from a stack pointer that includes offset. The encoded pointer includes the offset value and ciphertext that is based on encrypting a portion of a decorated pointer that includes a maximum offset value. Stack data is encrypted based on the encoded pointer, and the encoded pointer is stored in a stack pointer register of a processor. To access memory, a decoded pointer is constructed based on decrypting the ciphertext of the encoded pointer and the offset value. Encrypted stack data is accessed based on the decoded pointer, and the encrypted stack is decrypted based on the encoded pointer.
    Type: Grant
    Filed: March 26, 2021
    Date of Patent: July 25, 2023
    Assignee: Intel Corporation
    Inventors: Andrew James Weiler, David M. Durham, Michael D. LeMay, Sergej Deutsch, Michael E. Kounavis, Salmin Sultana, Karanvir S. Grewal
  • Patent number: 11669625
    Abstract: A processor includes a register to store an encoded pointer to a memory location in memory and the encoded pointer is to include an encrypted portion. The processor further includes circuitry to determine a first data encryption factor based on a first data access instruction, decode the encoded pointer to obtain a memory address of the memory location, use the memory address to access an encrypted first data element, and decrypt the encrypted first data element using a cryptographic algorithm with first inputs to generate a decrypted first data element. The first inputs include the first data encryption factor based on the first data access instruction and a second data encryption factor from the encoded pointer.
    Type: Grant
    Filed: December 26, 2020
    Date of Patent: June 6, 2023
    Assignee: Intel Corporation
    Inventors: David M. Durham, Karanvir S. Grewal, Michael D. LeMay, Salmin Sultana
  • Patent number: 11580035
    Abstract: A processor includes a register to store an encoded pointer to a variable in stack memory. The encoded pointer includes an encrypted portion and a fixed plaintext portion of a memory address corresponding to the variable. The processor further includes circuitry to, in response to a memory access request for associated with the variable, decrypt the encrypted portion of the encoded pointer to obtain first upper address bits of the memory address and a memory allocation size for a variable, decode the encoded pointer to obtain the memory address, verify the memory address is valid based, at least in part on the memory allocation size, and in response to determining that the memory address is valid, allow the memory access request.
    Type: Grant
    Filed: December 26, 2020
    Date of Patent: February 14, 2023
    Assignee: Intel Corporation
    Inventors: David M. Durham, Karanvir S. Grewal, Michael D. LeMay, Salmin Sultana, Andrew James Weiler
  • Publication number: 20230027329
    Abstract: A processor, a system, a machine readable medium, and a method.
    Type: Application
    Filed: December 26, 2020
    Publication date: January 26, 2023
    Applicant: Intel Corporation
    Inventors: David M. Durham, Michael D. LeMay, Salmin Sultana, Karanvir S. Grewal, Michael E. Kounavis, Sergej Deutsch, Andrew James Weiler, Abhishek Basak, Dan Baum, Santosh Ghosh
  • Publication number: 20220318158
    Abstract: Techniques for memory tagging are disclosed. In the illustrative embodiment, 16 bits of a virtual memory address are used as memory tag bits. In a page table entry corresponding to the virtual memory address, page tag bits indicate which of the 16 bits of the virtual memory address are to be sent to the memory as memory tag bits when a memory operation is requested on the virtual memory address. The memory can then compare the memory tag bits sent with the physical memory address to memory tag bits stored on the memory that correspond to the physical memory address. If the memory tag bits match, then the operation is allowed to proceed.
    Type: Application
    Filed: June 14, 2022
    Publication date: October 6, 2022
    Applicant: Intel Corporation
    Inventors: David M. Durham, Michael D. LeMay
  • Publication number: 20220206958
    Abstract: An apparatus comprising a processor unit comprising circuitry to generate, for a first network host, a request for an object of a second network host, wherein the request comprises an address comprising a routable host ID of the second network host and an at least partially encrypted object ID, wherein the address uniquely identifies the object within a distributed computing domain; and a memory element to store at least a portion of the object.
    Type: Application
    Filed: September 22, 2021
    Publication date: June 30, 2022
    Applicant: Intel Corporation
    Inventors: Michael D. LeMay, David M. Durham, Anjo Lucas Vahldiek-Oberwagner, Anna Trikalinou
  • Publication number: 20220138329
    Abstract: In one embodiment, a processor of a cryptographic computing system includes a register to store an encryption key and address generation circuitry to obtain a pointer representing a linear address to be accessed by a read or write operation, the pointer being at least partially encrypted, obtain the key from the register and a context value, decrypt the encrypted portion of the pointer using the key and the context value as a tweak input, and generate an effective address for use in the read or write operation based on an output of the decryption.
    Type: Application
    Filed: January 14, 2022
    Publication date: May 5, 2022
    Applicant: Intel Corporation
    Inventors: Michael E. Kounavis, Santosh Ghosh, Sergej Deutsch, Michael D. LeMay, David M. Durham, Stanislav Shwartsman
  • Publication number: 20220121447
    Abstract: In one embodiment, a processor includes a memory hierarchy and a core. The core includes circuitry to access an encoded code pointer for a load instruction and perform a memory disambiguation (MD) lookup using a subset of address bits indicated by the encoded code pointer and context information indicated by one or more of the encoded code pointer or an encoded data pointer of the load instruction. The circuitry is further to determine, based on the MD lookup, that the load instruction is predicted to be independent from previous store instructions and forward the load instruction for out-of-order execution based on the determination.
    Type: Application
    Filed: December 23, 2021
    Publication date: April 21, 2022
    Applicant: Intel Corporation
    Inventors: Abhishek Basak, Santosh Ghosh, Michael D. LeMay, David M. Durham
  • Publication number: 20220121578
    Abstract: In one embodiment, a processor includes circuitry to decode an instruction referencing an encoded data pointer that includes a set of plaintext linear address bits and a set of encrypted linear address bits. The processor also includes circuitry to perform a speculative lookup in a translation lookaside buffer (TLB) using the plaintext linear address bits to obtain physical address, buffer a set of architectural predictor state values based on the speculative TLB lookup, and speculatively execute the instruction using the physical address obtained from the speculative TLB lookup. The processor also includes circuitry to determine whether the speculative TLB lookup was correct and update a set of architectural predictor state values of the core using the buffered architectural predictor state values based on a determination that the speculative TLB lookup was correct.
    Type: Application
    Filed: December 23, 2021
    Publication date: April 21, 2022
    Applicant: Intel Corporation
    Inventors: Abhishek Basak, Santosh Ghosh, Michael D. LeMay, David M. Durham
  • Publication number: 20220100907
    Abstract: In one embodiment, a processor includes a memory hierarchy that stores encrypted data, tracking circuitry that tracks an execution context for instructions executed by the processor, and cryptographic computing circuitry to encrypt/decrypt data that is stored in the memory hierarchy. The cryptographic computing circuitry obtains context information from the tracking circuitry for a load instruction to be executed by the processor, where the context information indicates information about branch predictions made by a branch prediction unit of the processor, and decrypts the encrypted data using a key and the context information as a tweak input to the decryption.
    Type: Application
    Filed: December 10, 2021
    Publication date: March 31, 2022
    Applicant: Intel Corporation
    Inventors: Abhishek Basak, Salmin Sultana, Santosh Ghosh, Michael D. LeMay, Karanvir S. Grewal, David M. Durham
  • Publication number: 20210405896
    Abstract: Technologies disclosed herein provide one example of a system that includes processor circuitry to be communicatively coupled to a memory circuitry. The processor circuitry is to receive a memory access request corresponding to an application for access to an address range in a memory allocation of the memory circuitry and to locate a metadata region within the memory allocation. The processor circuitry is also to, in response to a determination that the address range includes at least a portion of the metadata region, obtain first metadata stored in the metadata region, use the first metadata to determine an alternate memory address in a relocation region, and read, at the alternate memory address, displaced data from the portion of the metadata region included in the address range of the memory allocation. The address range includes one or more bytes of an expected allocation region of the memory allocation.
    Type: Application
    Filed: September 10, 2021
    Publication date: December 30, 2021
    Applicant: Intel Corporation
    Inventors: David M. Durham, Michael D. LeMay, Sergej Deutsch, Joydeep Rakshit, Anant Vithal Nori, Jayesh Gaur, Sreenivas Subramoney
  • Publication number: 20210240638
    Abstract: Technologies disclosed herein provide one example of a processor that includes a register to store a first encoded pointer for a first memory allocation for an application and circuitry coupled to memory. Size metadata is stored in first bits of the first encoded pointer and first memory address data associated with the first memory allocation is stored in second bits of the first encoded pointer. The circuitry is configured to determine a first memory address of a first marker region in the first memory allocation, obtain current data from the first marker region at the first memory address, compare the current data to a reference marker stored separately from the first memory allocation, and determine that the first memory allocation is in a first state in response to a determination that the current data corresponds to the reference marker.
    Type: Application
    Filed: March 26, 2021
    Publication date: August 5, 2021
    Applicant: Intel Corporation
    Inventors: Sergej Deutsch, David M. Durham, Karanvir S. Grewal, Michael D. LeMay, Michael E. Kounavis
  • Publication number: 20210218547
    Abstract: In one embodiment, an encoded pointer is constructed from a stack pointer that includes offset. The encoded pointer includes the offset value and ciphertext that is based on encrypting a portion of a decorated pointer that includes a maximum offset value. Stack data is encrypted based on the encoded pointer, and the encoded pointer is stored in a stack pointer register of a processor. To access memory, a decoded pointer is constructed based on decrypting the ciphertext of the encoded pointer and the offset value. Encrypted stack data is accessed based on the decoded pointer, and the encrypted stack is decrypted based on the encoded pointer.
    Type: Application
    Filed: March 26, 2021
    Publication date: July 15, 2021
    Applicant: Intel Corporation
    Inventors: Andrew James Weiler, David M. Durham, Michael D. LeMay, Sergej Deutsch, Michael E. Kounavis, Salmin Sultana, Karanvir S. Grewal
  • Publication number: 20210150040
    Abstract: A processor includes a register to store an encoded pointer to a memory location in memory and the encoded pointer is to include an encrypted portion. The processor further includes circuitry to determine a first data encryption factor based on a first data access instruction, decode the encoded pointer to obtain a memory address of the memory location, use the memory address to access an encrypted first data element, and decrypt the encrypted first data element using a cryptographic algorithm with first inputs to generate a decrypted first data element. The first inputs include the first data encryption factor based on the first data access instruction and a second data encryption factor from the encoded pointer.
    Type: Application
    Filed: December 26, 2020
    Publication date: May 20, 2021
    Inventors: David M. Durham, Karanvir S. Grewal, Michael D. LeMay, Salmin Sultana