US 12,411,673 B2
Page-in linking
Louis G. Gerbarg, Saratoga, CA (US); Joseph J. Bonasera, San Francisco, CA (US); Davide Italiano, San Francisco, CA (US); Nick Kledzik, Cupertino, CA (US); Peter Cooper, San Jose, CA (US); and Mohamadou A. Abdoulaye, San Francisco, CA (US)
Assigned to Apple Inc., Cupertino, CA (US)
Filed by Apple Inc., Cupertino, CA (US)
Filed on Feb. 9, 2023, as Appl. No. 18/167,001.
Claims priority of provisional application 63/365,861, filed on Jun. 4, 2022.
Prior Publication US 2023/0393824 A1, Dec. 7, 2023
Int. Cl. G06F 8/54 (2018.01)
CPC G06F 8/54 (2013.01) 20 Claims
OG exemplary drawing
 
1. A method performed by a computing device, comprising:
initiating an execution of an executable that includes a page of executable code;
receiving an indication that the page of the executable code has moved into a process memory from a storage, wherein the page of the executable code includes unresolved symbol references to external libraries, wherein the process memory is part of a system memory, and wherein the system memory includes kernel space associated with a kernel of an operating system executing on the computing device;
in response to receiving the indication, generating resolution data for the unresolved symbol references to the external libraries in the page of the executable code;
sending, to the kernel of the operating system, the resolution data for the unresolved symbol references to the external libraries in the page of the executable code; and
generating, by the kernel of the operating system, resolved symbol references by linking the unresolved symbol references to the external libraries in the page of the executable code based on the resolution data for the unresolved symbol references to the external libraries in the page of the executable code.