Как вы, наверное, поняли, Apple должна выпускать только те части ядра, которые взяты из других проектов с открытым исходным кодом, и это не включает в себя пользовательские библиотеки, которые они строят поверх ядра.CoreSymbolication/CoreSymbolication.h
звучит очень похоже на заголовок пользовательского пространства для Obj-C, так что вы, вероятно, можете собрать утилиты DTrace для ядра без него.(Хотя я вполне могу ошибаться.)
Я думаю, он используется для идентификации символов в команде userland dtrace(1m)
.Если бы только был инструмент, который мог бы помочь нам понять это ...: -D
# dtrace -n 'pid$target:CoreSymbolication::entry {}' -c 'dtrace -ln syscall::write:entry'
dtrace: description 'pid$target:CoreSymbolication::entry ' matched 246 probes
ID PROVIDER MODULE FUNCTION NAME
147 syscall write entry
dtrace: pid 88089 has exited
CPU ID FUNCTION:NAME
2 6538 CSSymbolOwnerGetRegionWithName:entry
2 5014 CSSymbolOwnerForeachRegionWithName:entry
2 5078 CSRegionForeachSymbol:entry
2 6495 CSSymbolicatorGetSymbolOwnerWithUUIDAtTime:entry
2 6493 CSSymbolicatorForeachSymbolOwnerWithUUIDAtTime:entry
2 6494 CSSymbolicatorForeachSymbolOwnerWithCFUUIDBytesAtTime:entry
2 5048 CSSymbolOwnerGetDataFlags:entry
2 6538 CSSymbolOwnerGetRegionWithName:entry
2 5014 CSSymbolOwnerForeachRegionWithName:entry
2 5078 CSRegionForeachSymbol:entry
2 5092 CSSymbolIsExternal:entry
2 5092 CSSymbolIsExternal:entry
...
Похоже, библиотека используется командой dtrace
, в любом случае.