Patents by Inventor Jeremiah R. Sequoia
Jeremiah R. Sequoia 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: 11829787Abstract: A multi-process model to support compiling applications for multiple platforms is described. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: GrantFiled: March 31, 2021Date of Patent: November 28, 2023Assignee: Apple Inc.Inventors: Ali T. Ozer, Russell A. Bishop, Aaditya Chandrasekhar, Christopher A. Dreessen, Kristin M. Forster, Jeremiah R. Sequoia
-
Patent number: 11726799Abstract: Embodiments described herein provide for system and methods to enable an operating environment that supports multi-OS applications. One embodiment provides for a non-transitory machine-readable medium storing instructions that cause a data processing system to perform operations to detect conflicts during a build process for a dynamic library. The operations include loading program code for the dynamic library to build for a first platform, parsing the set of interfaces and data structures exported by the dynamic library to verify consistency of a build contract for the dynamic library, and generating a build error during a build process for the dynamic library upon detecting an inconsistent build contract specifying at least an application binary interface (ABI) and an API for the dynamic library.Type: GrantFiled: October 25, 2019Date of Patent: August 15, 2023Assignee: Apple Inc.Inventors: Jeremiah R. Sequoia, Juergen Ributzka, Shengzhao Wu
-
Patent number: 11503431Abstract: A method includes receiving a first instance of code to be simulated for a first mobile device and a second instance of code to be simulated for a second mobile device, and generating, on a graphical user interface, a first representation of the first mobile device and a second representation of the second mobile device. When a request for a ranging measurement between the mobile device representations is received, a first pixel representative of a first location of the first representation and a second pixel representative of a second location of the second representation is determined, and a separation value between the first and second pixels is determined. A ranging value is determined based on the separation value and provided to the first instance of code in response to the request, thereby enabling the first instance of code to simulate a physical ranging measurement between two physical devices.Type: GrantFiled: September 24, 2020Date of Patent: November 15, 2022Assignee: Apple Inc.Inventors: Russell A. Bishop, Jr., Jeremiah R. Sequoia, Jonathan R. Schoenberg, Yagil Burowski
-
Publication number: 20210400434Abstract: A method includes receiving a first instance of code to be simulated for a first mobile device and a second instance of code to be simulated for a second mobile device, and generating, on a graphical user interface, a first representation of the first mobile device and a second representation of the second mobile device. When a request for a ranging measurement between the mobile device representations is received, a first pixel representative of a first location of the first representation and a second pixel representative of a second location of the second representation is determined, and a separation value between the first and second pixels is determined. A ranging value is determined based on the separation value and provided to the first instance of code in response to the request, thereby enabling the first instance of code to simulate a physical ranging measurement between two physical devices.Type: ApplicationFiled: September 24, 2020Publication date: December 23, 2021Applicant: Apple Inc.Inventors: Russell A. Bishop, JR., Jeremiah R. Sequoia, Jonathan R. Schoenberg, Yagil Burowski
-
Publication number: 20210216337Abstract: A multi-process model to support compiling applications for multiple platforms is described. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: ApplicationFiled: March 31, 2021Publication date: July 15, 2021Inventors: Ali T. Ozer, Russell A. Bishop, Aaditya Chandrasekhar, Christopher A. Dreessen, Kristin M. Forster, Jeremiah R. Sequoia
-
Patent number: 10983811Abstract: Embodiments described herein provide for a multi-process model to support compiling applications for multiple platforms. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: GrantFiled: September 26, 2018Date of Patent: April 20, 2021Assignee: Apple Inc.Inventors: Ali T. Ozer, Russell A. Bishop, Aaditya Chandrasekhar, Christopher A. Dreessen, Kristin M. Forster, Jeremiah R. Sequoia
-
Patent number: 10983803Abstract: Embodiments described herein provide for system and methods to enable an operating environment that supports multi-OS applications. One embodiment provides for a non-transitory machine-readable medium storing instructions to perform operations comprising parsing a set of object files to generate a graph of code and data for each object file, group elements from the graphs of code and data into a master graph of elements, and generating an annotated output file including compiled code for the dynamic library, the annotated output file having a header and a first set of load commands, the first set of load commands to specify multiple target platforms for the dynamic library.Type: GrantFiled: August 17, 2018Date of Patent: April 20, 2021Assignee: Apple Inc.Inventors: Michael D. Trent, Louis G. Gerbarg, Patrick O. Heynen, Ali T. Ozer, Jeremiah R. Sequoia
-
Patent number: 10901761Abstract: Embodiments described herein provide for a multi-process model to support compiling applications for multiple platforms. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: GrantFiled: September 26, 2018Date of Patent: January 26, 2021Assignee: Apple Inc.Inventors: Aaditya Chandrasekhar, Russell A. Bishop, Christopher A. Dreessen, Kristin M. Forster, Ali T. Ozer, Jeremiah R. Sequoia
-
Patent number: 10684871Abstract: Embodiments described herein provide for a multi-process model to support compiling applications for multiple platforms. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: GrantFiled: September 26, 2018Date of Patent: June 16, 2020Assignee: Apple Inc.Inventors: Russell A. Bishop, Aaditya Chandrasekhar, Christopher A. Dreessen, Kristin M. Forster, Ali T. Ozer, Jeremiah R. Sequoia
-
Publication number: 20200057659Abstract: Embodiments described herein provide for system and methods to enable an operating environment that supports multi-OS applications. One embodiment provides for a non-transitory machine-readable medium storing instructions that cause a data processing system to perform operations to detect conflicts during a build process for a dynamic library. The operations include loading program code for the dynamic library to build for a first platform, parsing the set of interfaces and data structures exported by the dynamic library to verify consistency of a build contract for the dynamic library, and generating a build error during a build process for the dynamic library upon detecting an inconsistent build contract specifying at least an application binary interface (ABI) and an API for the dynamic library.Type: ApplicationFiled: October 25, 2019Publication date: February 20, 2020Inventors: Jeremiah R. Sequoia, Juergen Ributzka, Shengzhao Wu
-
Publication number: 20190369987Abstract: Embodiments described herein provide for a multi-process model to support compiling applications for multiple platforms. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: ApplicationFiled: September 26, 2018Publication date: December 5, 2019Inventors: Aaditya Chandrasekhar, Russell A. Bishop, Christopher A. Dreessen, Kristin M. Forster, Ali T. Ozer, Jeremiah R. Sequoia
-
Publication number: 20190370091Abstract: Embodiments described herein provide for a multi-process model to support compiling applications for multiple platforms. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: ApplicationFiled: September 26, 2018Publication date: December 5, 2019Inventors: Ali T. Ozer, Russell A. Bishop, Aaditya Chandrasekhar, Christopher A. Dreessen, Kristin M. Forster, Jeremiah R. Sequoia
-
Publication number: 20190370020Abstract: Embodiments described herein provide for system and methods to enable an operating environment that supports multi-OS applications. One embodiment provides for a non-transitory machine-readable medium storing instructions that cause a data processing system to perform operations to detect conflicts during a build process for a dynamic library, the operations comprising loading program code for the dynamic library to build for a first platform, determining a set of interfaces and data structures exported by the dynamic library for the first platform, determining a set of interfaces and data structures exported by the dynamic library for a second platform, parsing the set of interfaces and data structures to verify consistency of a build contract for the dynamic library, and generating a build error during a build process for the dynamic library upon detecting an inconsistent build contract specifying at least an application binary interface (ABI) for the dynamic library.Type: ApplicationFiled: August 17, 2018Publication date: December 5, 2019Inventors: Jeremiah R. Sequoia, JUERGEN RIBUTZKA, SHENGZHAO WU
-
Publication number: 20190370033Abstract: Embodiments described herein provide for a multi-process model to support compiling applications for multiple platforms. In one embodiment, applications designed for execution on a mobile platform can be ported to and/or compiled for execution on a desktop/laptop platform without requiring modification of the core program code of the mobile application. The mobile application is executed using a multi-process (e.g., two or more process) model in which the core mobile application program generates content that is displayed by a host process. The host process enables automatic translation of program calls to generate mobile user interface elements into program calls that generate user interface elements of the host platform. The translation can be performed using a multi-process (e.g., two or more process) model in which the core application program generates content that is displayed by a host process.Type: ApplicationFiled: September 26, 2018Publication date: December 5, 2019Inventors: Russell A. Bishop, Aaditya Chandrasekhar, Christopher A. Dreessen, Kristin M. Forster, Ali T. Ozer, Jeremiah R. Sequoia
-
Publication number: 20190369985Abstract: Embodiments described herein provide for system and methods to enable an operating environment that supports multi-OS applications. One embodiment provides for a non-transitory machine-readable medium storing instructions to perform operations comprising parsing a set of object files to generate a graph of code and data for each object file, group elements from the graphs of code and data into a master graph of elements, and generating an annotated output file including compiled code for the dynamic library, the annotated output file having a header and a first set of load commands, the first set of load commands to specify multiple target platforms for the dynamic library.Type: ApplicationFiled: August 17, 2018Publication date: December 5, 2019Inventors: MICHAEL D. TRENT, LOUIS G. GERBARG, PATRICK O. HEYNEN, ALI T. OZER, JEREMIAH R. SEQUOIA
-
Patent number: 10474479Abstract: Embodiments described herein provide for system and methods to enable an operating environment that supports multi-OS applications. One embodiment provides for a non-transitory machine-readable medium storing instructions that cause a data processing system to perform operations to detect conflicts during a build process for a dynamic library, the operations comprising loading program code for the dynamic library to build for a first platform, determining a set of interfaces and data structures exported by the dynamic library for the first platform, determining a set of interfaces and data structures exported by the dynamic library for a second platform, parsing the set of interfaces and data structures to verify consistency of a build contract for the dynamic library, and generating a build error during a build process for the dynamic library upon detecting an inconsistent build contract specifying at least an application binary interface (ABI) for the dynamic library.Type: GrantFiled: August 17, 2018Date of Patent: November 12, 2019Assignee: Apple Inc.Inventors: Jeremiah R. Sequoia, Juergen Ributzka, Shengzhao Wu