-
Notifications
You must be signed in to change notification settings - Fork 6
Foundation Setup and Foundation Info in the universe
Nat! edited this page Sep 27, 2018
·
3 revisions
See the mulle-objc-runtime Wiki about the big bang
MulleObjC provides the main setup routines for Objective-C Foundation setup during the universe big bang.
Inside each universe there is a sizeable chunk of memory allocated for Foundation use. It can be retrieved with
_mulle_objc_universe_get_foundationdata
and it is S_MULLE_OBJC_UNIVERSE_FOUNDATION_SPACE
bytes long (currently 1KB).
This space is used to store a struct _mulle_objc_universefoundationinfo
that is used to support the following tasks:
- reference root objects such as singletons
- maintain a separate exception vector table that can accept objects as arguments
- UTF8 to string and back conversion vectors used in
_mulle_objc_string
and_mulle_objc_characters
mainly for supporting exceptions and debugging - set the NSAutoreleasePool class
- maintain some information about threads