[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Another simple reversing of OS X Foundation and CoreFoundation
From: |
Maxthon Chan |
Subject: |
Another simple reversing of OS X Foundation and CoreFoundation |
Date: |
Wed, 19 Jun 2013 20:26:02 +0800 |
$for fmwk in Foundation CoreFoundation; do class-dump
/System/Library/Framework/$fmwk.framework -H -o ~/Developer/$fmwk; done
And I got a set of class dump of Foundation and CoreFoundation of OS X. And
examining the files I think I found something:
* A significant portion of what OS X called Foundation is in fact implemented
in CoreFoundation. (that is, Foundation itself, not just public abstract class
of class clusters and CoreFoundation mirroring classes)
* Foundation re-export the symbols by applying huge amounts of categories on
the abstract public class, redeclaring the interfaces.
* Apple moved the headers from CoreFoundation to Foundation when distributing,
but in reality the code is located in CoreFoundation.
* What remained in Foundation is the classes that is not bridged.
* All CoreFoundation objects are actually Objective-C objects, at least there
are stub classes that inherit from NSCFType or their bridged public abstract
class.
This analyse is based on OS X 10.8 SDK from Xcode 4.6, and OS X 10.9 DP1
binaries.
- Another simple reversing of OS X Foundation and CoreFoundation,
Maxthon Chan <=