7

I am wondering if anyone knows where the real MacOS framework binaries are located? The traditional answer would be /System/Library/Frameworks and /System/Library/PrivateFrameworks. Yes, there is stuff in those directories, but not the actual code.

I'm aware that, on iOS, the binaries are all amalgamated into a single, memory-mapped cache file for improved performance; the cache being shared across all running apps. I'm wondering if the same is true of recent versions of MacOS? I could see the real binaries on High Sierra, but not recently.

So I'm guessing that (as on iOS) the individual frameworks no longer exist in discrete form; everything is in a big cache file. But where is it?

Siguza
  • 21,155
  • 6
  • 52
  • 89
Dave Jewell
  • 190
  • 1
  • 7

1 Answers1

10

It's in:

  • /System/Library/dyld/dyld_shared_cache_{arch} (Big Sur / Monterey)
  • /System/Cryptexes/OS/System/Library/dyld/dyld_shared_cache_{arch} (Ventura).
Siguza
  • 21,155
  • 6
  • 52
  • 89
Art
  • 209
  • 3
  • 5
  • 1
    Thanks Art. Coincidentally, I found a lot of discussion about the shared cache just yesterday, including source for dyld_shared_cache_util. But I've not had time to look pick through it yet, so your direct answer was very useful. In a way, I'm a bit surprised that Apple don't load the shared cache directly from an encrypted location on the signed system volume. That would add an additional level of inscrutability to the mix. – Dave Jewell Nov 15 '20 at 14:46
  • This is no longer valid, it seems. In Ventura (macOS 13): `ls /System/Library/dyld` -> no such file or directory. – Rob N Mar 17 '23 at 14:10