Difference between revisions of "Dyld shared cache"

From The iPhone Wiki
Jump to: navigation, search
(DYLD_SHARED_CACHE)
m (Location)
 
(9 intermediate revisions by 2 users not shown)
Line 1: Line 1:
   
== DYLD_SHARED_CACHE ==
+
== 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.
 
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.
 
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 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

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. 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.)