TECHNIQUES FOR PERFORMING DYNAMIC LINKING
    1.
    发明申请

    公开(公告)号:US20180349156A1

    公开(公告)日:2018-12-06

    申请号:US15817103

    申请日:2017-11-17

    Applicant: Apple Inc.

    Abstract: Disclosed herein are techniques for performing dynamic linking at a computing device. According to some embodiments, the techniques can involve receiving a request to perform a dynamic linking of a software application. The request can be issued in conjunction with installing the software application, launching the software application for a first time, and so on. In response to the request, a closure file can be generated based on different properties associated with the software application (e.g., environment variables, object files, etc.). Notably, the closure file is generated “out-of-process” relative to the execution environment of the software application. Additionally, the techniques can involve caching the closure file such that the closure file is accessible to the software application. In turn, the software application can utilize the closure file at launch/execution times to reduce a number of dynamic linking operations that otherwise are required to take place using conventional approaches.

    METHOD AND APPARATUS FOR INTERMEDIATE REPRESENTATION OF APPLICATIONS
    2.
    发明申请
    METHOD AND APPARATUS FOR INTERMEDIATE REPRESENTATION OF APPLICATIONS 审中-公开
    用于中间代表应用的方法和装置

    公开(公告)号:US20160357530A1

    公开(公告)日:2016-12-08

    申请号:US14732604

    申请日:2015-06-05

    Applicant: Apple Inc.

    CPC classification number: G06F8/47

    Abstract: A method and an apparatus for application submission and distribution based on an intermediate code are described. The intermediate code may be received at a server device and stored in a data storage. The intermediate code may have been built from a source code. The intermediate code may include one or more build options applied for building an executable code from the source code. The executable code may be provided to target devices of a processor platform to perform data processing operations specified in the source code. In one embodiment, a particular executable code may be generated from the intermediate code at the server device to target a particular processor platform according to the build options embedded in the intermediate code. The particular executable code may be forwarded to a device requesting for an application corresponding to the particular executable code to perform the data processing operations.

    Abstract translation: 描述了基于中间代码的应用提交和分发的方法和装置。 可以在服务器设备处接收中间代码并存储在数据存储器中。 中间代码可能是源代码构建的。 中间代码可以包括应用于从源代码构建可执行代码的一个或多个构建选项。 可执行代码可以被提供给处理器平台的目标设备,以执行在源代码中指定的数据处理操作。 在一个实施例中,可以根据嵌入在中间代码中的构建选项,从服务器设备处的中间代码生成特定可执行代码以对目标特定的处理器平台。 可以将特定可执行代码转发到请求与特定可执行代码相对应的应用的设备,以执行数据处理操作。

    TECHNIQUES FOR RUNTIME PROTOCOL CONFORMANCE CACHE FOR THIRD PARTY APPLICATIONS

    公开(公告)号:US20230393980A1

    公开(公告)日:2023-12-07

    申请号:US18085475

    申请日:2022-12-20

    Applicant: APPLE INC.

    CPC classification number: G06F12/0802 G06F16/2272 G06F2212/603

    Abstract: Techniques may include receiving a first request for a conformance check for a conformance pair, the conformance pair include a variable type and a particular protocol. The first request can identifying a first pointer. The technique can include determining a conformance check result is not cached for the conformance pair using the first pointer. In response to determining that the conformance check result is not cached for a variable, the electronic device may include performing the conformance check for the conformance pair and storing a result of the conformance check in an index table in persistent memory in association with at least a portion of bits in the first pointer. The technique can include referencing the index table on subsequent requests for a conformance check.

    Techniques for performing dynamic linking

    公开(公告)号:US10606611B2

    公开(公告)日:2020-03-31

    申请号:US15817103

    申请日:2017-11-17

    Applicant: Apple Inc.

    Abstract: Disclosed herein are techniques for performing dynamic linking at a computing device. According to some embodiments, the techniques can involve receiving a request to perform a dynamic linking of a software application. The request can be issued in conjunction with installing the software application, launching the software application for a first time, and so on. In response to the request, a closure file can be generated based on different properties associated with the software application (e.g., environment variables, object files, etc.). Notably, the closure file is generated “out-of-process” relative to the execution environment of the software application. Additionally, the techniques can involve caching the closure file such that the closure file is accessible to the software application. In turn, the software application can utilize the closure file at launch/execution times to reduce a number of dynamic linking operations that otherwise are required to take place using conventional approaches.

    PAGE-IN LINKING
    6.
    发明公开
    PAGE-IN LINKING 审中-公开

    公开(公告)号:US20230393824A1

    公开(公告)日:2023-12-07

    申请号:US18167001

    申请日:2023-02-09

    Applicant: Apple Inc.

    CPC classification number: G06F8/54

    Abstract: A dynamic linking system can be designed to dynamically resolve symbol references of pages associated with executable code as the pages are paged into virtual memory. The operating system can include a dynamic linker that uses metadata in the pages to determine symbol references that reference other code or values. Other code can include code in shared libraries. The dynamic linker can generate a data structure containing the symbol references in a small and dense format. The dynamic linker can send the data structure and other relevant data to the kernel once the symbol references have been identified. The kernel can perform the functions related to resolving the symbol references. For example, the kernel can resolve the symbol by determining a pointer value for the symbol, wherein the pointer value can be used to point to code or values. The kernel can resolve the symbol references and store the data structure, which contains the resolved symbol references.

    Threaded linking pointer mechanism

    公开(公告)号:US11308160B2

    公开(公告)日:2022-04-19

    申请号:US16146535

    申请日:2018-09-28

    Applicant: Apple Inc.

    Abstract: One embodiment provides for a computer-implemented method comprising generating a linked list table including a first component having linking data to be stored in a table data structure for one or more rebase and bind operations and second a component having instructions to implement the table data structure to perform the rebase and bind operations according to a linked list chain and executing the instructions in the second component of the linked list table to perform the one or more rebase and bind operations based on the linked list chain.

    METHOD AND APPARATUS FOR INTERMEDIATE REPRESENTATION OF APPLICATIONS

    公开(公告)号:US20180260199A1

    公开(公告)日:2018-09-13

    申请号:US15975666

    申请日:2018-05-09

    Applicant: Apple Inc.

    CPC classification number: G06F8/47

    Abstract: A method and an apparatus for application submission and distribution based on an intermediate code are described. The intermediate code may be received at a server device and stored in a data storage. The intermediate code may have been built from a source code. The intermediate code may include one or more build options applied for building an executable code from the source code. The executable code may be provided to target devices of a processor platform to perform data processing operations specified in the source code. In one embodiment, a particular executable code may be generated from the intermediate code at the server device to target a particular processor platform according to the build options embedded in the intermediate code. The particular executable code may be forwarded to a device requesting for an application corresponding to the particular executable code to perform the data processing operations.

Patent Agency Ranking