The iPhone Wiki is no longer updated. Visit this article on The Apple Wiki for current information. |
Difference between revisions of "Dyld shared cache"
(Added a page about the dyld_shared_cache) |
m (→Location) |
||
(10 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | == |
+ | == The dyld_shared_cache == |
− | Since iPhone OS 3.1, all system (private and public) libraries have been combined into a big cache file to improve performance. |
+ | "Since iPhone OS 3.1, all system (private and public) libraries have been combined into a big cache file to improve performance. |
+ | The original files are redundant and thus eliminated from the system. |
||
If you're looking for binaries or libraries inside of /System/Library/Frameworks or /System/Library/PrivateFrameworks (or other directories) and can't, this is why. |
If you're looking for binaries or libraries inside of /System/Library/Frameworks or /System/Library/PrivateFrameworks (or other directories) and can't, this is why. |
||
+ | OS X also uses a shared cache. |
||
− | OS X also uses a shared cache. Unlike iOS, OS X ships with the source binaries still on-disk, particularly so it can be updated with update_dyld_shared_cache. The cache is only vaguely documented in dyld man pages. |
||
+ | Unlike iOS, OS X ships with the source binaries still on-disk, particularly so it can be updated with update_dyld_shared_cache. |
||
+ | The cache is only vaguely documented in dyld man pages." - [http://iphonedevwiki.net/index.php/Dyld_shared_cache The iPhone Dev Wiki] |
||
+ | The binaries inside the dyld_shared_cache can be used to create C header files from by using [http://stevenygard.com/projects/class-dump/ classdump]. |
||
− | == Extracted dyld_shared_caches |
||
+ | |||
− | [https://github.com/coffeebreakerz/iOS1031-dyld_shared_cache iOS 10.3.1 ARM64] |
||
+ | With that header files using iOS Private API's is sometimes possible. |
||
+ | |||
+ | == Location == |
||
+ | In iOS 10, the dyld_shared_cache is located in /System/Library/Caches/com.apple.dyld/. |
||
+ | The folder will contain caches for each CPU-Architecture. (eg: dyld_shared_cache_arm64.) |
Latest revision as of 03:26, 14 September 2017
"Since iPhone OS 3.1, all system (private and public) libraries have been combined into a big cache file to improve performance. The original files are redundant and thus eliminated from the system. If you're looking for binaries or libraries inside of /System/Library/Frameworks or /System/Library/PrivateFrameworks (or other directories) and can't, this is why. OS X also uses a shared cache. Unlike iOS, OS X ships with the source binaries still on-disk, particularly so it can be updated with update_dyld_shared_cache. The cache is only vaguely documented in dyld man pages." - The iPhone Dev Wiki
The binaries inside the dyld_shared_cache can be used to create C header files from by using classdump.
With that header files using iOS Private API's is sometimes possible.
Location
In iOS 10, the dyld_shared_cache is located in /System/Library/Caches/com.apple.dyld/. The folder will contain caches for each CPU-Architecture. (eg: dyld_shared_cache_arm64.)