一、生成 Link Map File

Xcode的配置中 Target -> Build Setting -> Linking 将Write Link Map File设置为YES来生成Link Map File,运行代码即可生成Link Map File

二、查看  Link Map File文件

cd /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Intermediates.noindex/learnDISsemaphore.build/Debug-iphonesimulator/learnDISsemaphore.build

ZZ@ZZZZ-Pro learnDISsemaphore.build % ls
Base.lproj
DerivedSources
Objects-normal
all-product-headers.yaml
assetcatalog_dependencies
assetcatalog_generated_info.plist
learnDISsemaphore-LinkMap-normal-x86_64.txt
learnDISsemaphore-all-non-framework-target-headers.hmap
learnDISsemaphore-all-target-headers.hmap
learnDISsemaphore-generated-files.hmap
learnDISsemaphore-own-target-headers.hmap
learnDISsemaphore-project-headers.hmap
learnDISsemaphore.app-Simulated.xcent
learnDISsemaphore.app.xcent
learnDISsemaphore.hmap

learnDISsemaphore-LinkMap-normal-x86_64.txt就是Link Map File 文件

cat learnDISsemaphore-LinkMap-normal-x86_64.txt
# Path: /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Products/Debug-iphonesimulator/learnDISsemaphore.app/learnDISsemaphore
# Arch: x86_64
# Object files:
[  0] linker synthesized
[  1] /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Intermediates.noindex/learnDISsemaphore.build/Debug-iphonesimulator/learnDISsemaphore.build/learnDISsemaphore.app-Simulated.xcent
[  2] /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Intermediates.noindex/learnDISsemaphore.build/Debug-iphonesimulator/learnDISsemaphore.build/Objects-normal/x86_64/ViewController.o
[  3] /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Intermediates.noindex/learnDISsemaphore.build/Debug-iphonesimulator/learnDISsemaphore.build/Objects-normal/x86_64/AppDelegate.o
[  4] /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Intermediates.noindex/learnDISsemaphore.build/Debug-iphonesimulator/learnDISsemaphore.build/Objects-normal/x86_64/main.o
[  5] /Users/maochengfang/Library/Developer/Xcode/DerivedData/learnDISsemaphore-bamrvwubjyvskafwmmhxlpfjxmcn/Build/Intermediates.noindex/learnDISsemaphore.build/Debug-iphonesimulator/learnDISsemaphore.build/Objects-normal/x86_64/SceneDelegate.o
[  6] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.4.sdk/System/Library/Frameworks//Foundation.framework/Foundation.tbd
[  7] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.4.sdk/usr/lib/libobjc.tbd
[  8] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.4.sdk/usr/lib/libSystem.tbd
[  9] /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator14.4.sdk/System/Library/Frameworks//UIKit.framework/UIKit.tbd
# Sections:
# Address   Size        Segment Section
0x100001A50 0x00000903  __TEXT  __text
0x100002354 0x00000060  __TEXT  __stubs
0x1000023B4 0x000000B0  __TEXT  __stub_helper
0x100002464 0x00000D5B  __TEXT  __objc_methname
0x1000031C0 0x0000002A  __TEXT  __ustring
0x1000031EA 0x00000096  __TEXT  __cstring
0x100003280 0x00000070  __TEXT  __objc_classname
0x1000032F0 0x00000B0F  __TEXT  __objc_methtype
0x100003DFF 0x000001AA  __TEXT  __entitlements
0x100003FAC 0x00000048  __TEXT  __unwind_info
0x100004000 0x00000028  __DATA_CONST    __got
0x100004028 0x00000070  __DATA_CONST    __const
0x100004098 0x00000080  __DATA_CONST    __cfstring
0x100004118 0x00000018  __DATA_CONST    __objc_classlist
0x100004130 0x00000020  __DATA_CONST    __objc_protolist
0x100004150 0x00000008  __DATA_CONST    __objc_imageinfo
0x100008000 0x00000080  __DATA  __la_symbol_ptr
0x100008080 0x00001340  __DATA  __objc_const
0x1000093C0 0x00000028  __DATA  __objc_selrefs
0x1000093E8 0x00000018  __DATA  __objc_classrefs
0x100009400 0x00000008  __DATA  __objc_superrefs
0x100009408 0x00000008  __DATA  __objc_ivar
0x100009410 0x000000F0  __DATA  __objc_data
0x100009500 0x00000188  __DATA  __data
# Symbols:
# Address   Size        File  Name
0x100001A50 0x00000050  [  2] -[ViewController viewDidLoad]
0x100001AA0 0x000001E0  [  2] -[ViewController testFunc]
0x100001C80 0x00000070  [  2] ___26-[ViewController testFunc]_block_invoke
0x100001CF0 0x00000040  [  2] ___copy_helper_block_e8_32s
0x100001D30 0x00000030  [  2] ___destroy_helper_block_e8_32s
0x100001D60 0x00000070  [  2] ___26-[ViewController testFunc]_block_invoke.6
0x100001DD0 0x0000005A  [  2] ___26-[ViewController testFunc]_block_invoke_2
0x100001E30 0x00000080  [  3] -[AppDelegate application:didFinishLaunchingWithOptions:]
0x100001EB0 0x00000120  [  3] -[AppDelegate application:configurationForConnectingSceneSession:options:]
0x100001FD0 0x00000070  [  3] -[AppDelegate application:didDiscardSceneSessions:]
0x100002040 0x0000008E  [  4] _main
0x1000020D0 0x000000B0  [  5] -[SceneDelegate scene:willConnectToSession:options:]
0x100002180 0x00000040  [  5] -[SceneDelegate sceneDidDisconnect:]
0x1000021C0 0x00000040  [  5] -[SceneDelegate sceneDidBecomeActive:]
0x100002200 0x00000040  [  5] -[SceneDelegate sceneWillResignActive:]
0x100002240 0x00000040  [  5] -[SceneDelegate sceneWillEnterForeground:]
0x100002280 0x00000040  [  5] -[SceneDelegate sceneDidEnterBackground:]
0x1000022C0 0x00000020  [  5] -[SceneDelegate window]
0x1000022E0 0x00000040  [  5] -[SceneDelegate setWindow:]
0x100002320 0x00000033  [  5] -[SceneDelegate .cxx_destruct]
0x100002354 0x00000006  [  6] _NSLog
0x10000235A 0x00000006  [  6] _NSStringFromClass
0x100002360 0x00000006  [  9] _UIApplicationMain
0x100002366 0x00000006  [  8] _dispatch_async
0x10000236C 0x00000006  [  8] _dispatch_get_global_queue
0x100002372 0x00000006  [  8] _dispatch_semaphore_create
0x100002378 0x00000006  [  8] _dispatch_semaphore_signal
0x10000237E 0x00000006  [  8] _dispatch_semaphore_wait
0x100002384 0x00000006  [  7] _objc_alloc
0x10000238A 0x00000006  [  7] _objc_autoreleasePoolPop
0x100002390 0x00000006  [  7] _objc_autoreleasePoolPush
0x100002396 0x00000006  [  7] _objc_autoreleaseReturnValue
0x10000239C 0x00000006  [  7] _objc_msgSendSuper2
0x1000023A2 0x00000006  [  7] _objc_opt_class
0x1000023A8 0x00000006  [  7] _objc_retainAutoreleasedReturnValue
0x1000023AE 0x00000006  [  7] _objc_storeStrong
0x1000023B4 0x00000010  [  0] helper helper
0x1000023C4 0x0000000A  [  6] _NSLog
0x1000023CE 0x0000000A  [  6] _NSStringFromClass
0x1000023D8 0x0000000A  [  7] _objc_alloc
0x1000023E2 0x0000000A  [  7] _objc_autoreleasePoolPop
0x1000023EC 0x0000000A  [  7] _objc_autoreleasePoolPush
0x1000023F6 0x0000000A  [  7] _objc_autoreleaseReturnValue
0x100002400 0x0000000A  [  7] _objc_msgSendSuper2
0x10000240A 0x0000000A  [  7] _objc_opt_class
0x100002414 0x0000000A  [  7] _objc_retainAutoreleasedReturnValue
0x10000241E 0x0000000A  [  7] _objc_storeStrong
0x100002428 0x0000000A  [  8] _dispatch_async
0x100002432 0x0000000A  [  8] _dispatch_get_global_queue
0x10000243C 0x0000000A  [  8] _dispatch_semaphore_create
0x100002446 0x0000000A  [  8] _dispatch_semaphore_signal
0x100002450 0x0000000A  [  8] _dispatch_semaphore_wait
0x10000245A 0x0000000A  [  9] _UIApplicationMain
0x100002464 0x0000000C  [  2] literal string: viewDidLoad
0x100002470 0x00000009  [  2] literal string: testFunc
0x100002479 0x0000000E  [  2] literal string: currentThread
0x100002487 0x00000005  [  3] literal string: role
0x10000248C 0x0000001A  [  3] literal string: initWithName:sessionRole:
0x1000024A6 0x00000009  [  3] literal string: isEqual:
0x1000024AF 0x00000006  [  3] literal string: class
0x1000024B5 0x00000005  [  3] literal string: self
0x1000024BA 0x00000011  [  3] literal string: performSelector:
0x1000024CB 0x0000001C  [  3] literal string: performSelector:withObject:
0x1000024E7 0x00000027  [  3] literal string: performSelector:withObject:withObject:
0x10000250E 0x00000008  [  3] literal string: isProxy
0x100002516 0x0000000F  [  3] literal string: isKindOfClass:
0x100002525 0x00000011  [  3] literal string: isMemberOfClass:
0x100002536 0x00000014  [  3] literal string: conformsToProtocol:
0x10000254A 0x00000014  [  3] literal string: respondsToSelector:
0x10000255E 0x00000007  [  3] literal string: retain
0x100002565 0x00000008  [  3] literal string: release
0x10000256D 0x0000000C  [  3] literal string: autorelease
0x100002579 0x0000000C  [  3] literal string: retainCount
0x100002585 0x00000005  [  3] literal string: zone
0x10000258A 0x00000005  [  3] literal string: hash
0x10000258F 0x0000000B  [  3] literal string: superclass
0x10000259A 0x0000000C  [  3] literal string: description
0x1000025A6 0x00000011  [  3] literal string: debugDescription
0x1000025B7 0x0000001F  [  3] literal string: applicationDidFinishLaunching:
0x1000025D6 0x0000002C  [  3] literal string: application:willFinishLaunchingWithOptions:
0x100002602 0x0000002B  [  3] literal string: application:didFinishLaunchingWithOptions:
0x10000262D 0x0000001C  [  3] literal string: applicationDidBecomeActive:
0x100002649 0x0000001D  [  3] literal string: applicationWillResignActive:
0x100002666 0x0000001B  [  3] literal string: application:handleOpenURL:
0x100002681 0x00000032  [  3] literal string: application:openURL:sourceApplication:annotation:
0x1000026B3 0x0000001D  [  3] literal string: application:openURL:options:
0x1000026D0 0x00000024  [  3] literal string: applicationDidReceiveMemoryWarning:
0x1000026F4 0x0000001A  [  3] literal string: applicationWillTerminate:
0x10000270E 0x00000022  [  3] literal string: applicationSignificantTimeChange:
0x100002730 0x00000035  [  3] literal string: application:willChangeStatusBarOrientation:duration:
0x100002765 0x0000002B  [  3] literal string: application:didChangeStatusBarOrientation:
0x100002790 0x00000026  [  3] literal string: application:willChangeStatusBarFrame:
0x1000027B6 0x00000025  [  3] literal string: application:didChangeStatusBarFrame:
0x1000027DB 0x00000031  [  3] literal string: application:didRegisterUserNotificationSettings:
0x10000280C 0x0000003E  [  3] literal string: application:didRegisterForRemoteNotificationsWithDeviceToken:
0x10000284A 0x0000003E  [  3] literal string: application:didFailToRegisterForRemoteNotificationsWithError:
0x100002888 0x0000002A  [  3] literal string: application:didReceiveRemoteNotification:
0x1000028B2 0x00000029  [  3] literal string: application:didReceiveLocalNotification:
0x1000028DB 0x0000004F  [  3] literal string: application:handleActionWithIdentifier:forLocalNotification:completionHandler:
0x10000292A 0x00000061  [  3] literal string: application:handleActionWithIdentifier:forRemoteNotification:withResponseInfo:completionHandler:
0x10000298B 0x00000050  [  3] literal string: application:handleActionWithIdentifier:forRemoteNotification:completionHandler:
0x1000029DB 0x00000060  [  3] literal string: application:handleActionWithIdentifier:forLocalNotification:withResponseInfo:completionHandler:
0x100002A3B 0x00000041  [  3] literal string: application:didReceiveRemoteNotification:fetchCompletionHandler:
0x100002A7C 0x0000002F  [  3] literal string: application:performFetchWithCompletionHandler:
0x100002AAB 0x0000003C  [  3] literal string: application:performActionForShortcutItem:completionHandler:
0x100002AE7 0x00000043  [  3] literal string: application:handleEventsForBackgroundURLSession:completionHandler:
0x100002B2A 0x00000032  [  3] literal string: application:handleWatchKitExtensionRequest:reply:
0x100002B5C 0x0000002D  [  3] literal string: applicationShouldRequestHealthAuthorization:
0x100002B89 0x0000001E  [  3] literal string: application:handlerForIntent:
0x100002BA7 0x0000002C  [  3] literal string: application:handleIntent:completionHandler:
0x100002BD3 0x0000001F  [  3] literal string: applicationDidEnterBackground:
0x100002BF2 0x00000020  [  3] literal string: applicationWillEnterForeground:
0x100002C12 0x0000002F  [  3] literal string: applicationProtectedDataWillBecomeUnavailable:
0x100002C41 0x0000002C  [  3] literal string: applicationProtectedDataDidBecomeAvailable:
0x100002C6D 0x00000035  [  3] literal string: application:supportedInterfaceOrientationsForWindow:
0x100002CA2 0x00000031  [  3] literal string: application:shouldAllowExtensionPointIdentifier:
0x100002CD3 0x0000003F  [  3] literal string: application:viewControllerWithRestorationIdentifierPath:coder:
0x100002D12 0x0000002E  [  3] literal string: application:shouldSaveSecureApplicationState:
0x100002D40 0x00000031  [  3] literal string: application:shouldRestoreSecureApplicationState:
0x100002D71 0x00000030  [  3] literal string: application:willEncodeRestorableStateWithCoder:
0x100002DA1 0x0000002F  [  3] literal string: application:didDecodeRestorableStateWithCoder:
0x100002DD0 0x00000028  [  3] literal string: application:shouldSaveApplicationState:
0x100002DF8 0x0000002B  [  3] literal string: application:shouldRestoreApplicationState:
0x100002E23 0x0000002E  [  3] literal string: application:willContinueUserActivityWithType:
0x100002E51 0x00000035  [  3] literal string: application:continueUserActivity:restorationHandler:
0x100002E86 0x00000039  [  3] literal string: application:didFailToContinueUserActivityWithType:error:
0x100002EBF 0x00000023  [  3] literal string: application:didUpdateUserActivity:
0x100002EE2 0x00000034  [  3] literal string: application:userDidAcceptCloudKitShareWithMetadata:
0x100002F16 0x0000003C  [  3] literal string: application:configurationForConnectingSceneSession:options:
0x100002F52 0x00000025  [  3] literal string: application:didDiscardSceneSessions:
0x100002F77 0x00000007  [  3] literal string: window
0x100002F7E 0x0000000B  [  3] literal string: setWindow:
0x100002F89 0x00000024  [  5] literal string: scene:willConnectToSession:options:
0x100002FAD 0x00000014  [  5] literal string: sceneDidDisconnect:
0x100002FC1 0x00000016  [  5] literal string: sceneDidBecomeActive:
0x100002FD7 0x00000017  [  5] literal string: sceneWillResignActive:
0x100002FEE 0x0000001A  [  5] literal string: sceneWillEnterForeground:
0x100003008 0x00000019  [  5] literal string: sceneDidEnterBackground:
0x100003021 0x00000017  [  5] literal string: scene:openURLContexts:
0x100003038 0x00000022  [  5] literal string: stateRestorationActivityForScene:
0x10000305A 0x00000028  [  5] literal string: scene:willContinueUserActivityWithType:
0x100003082 0x0000001C  [  5] literal string: scene:continueUserActivity:
0x10000309E 0x00000033  [  5] literal string: scene:didFailToContinueUserActivityWithType:error:
0x1000030D1 0x0000001D  [  5] literal string: scene:didUpdateUserActivity:
0x1000030EE 0x0000004B  [  5] literal string: windowScene:didUpdateCoordinateSpace:interfaceOrientation:traitCollection:
0x100003139 0x0000003C  [  5] literal string: windowScene:performActionForShortcutItem:completionHandler:
0x100003175 0x00000034  [  5] literal string: windowScene:userDidAcceptCloudKitShareWithMetadata:
0x1000031A9 0x0000000E  [  5] literal string: .cxx_destruct
0x1000031B7 0x00000008  [  5] literal string: _window
0x1000031C0 0x0000000E  [  2] l_.str
0x1000031CE 0x0000000E  [  2] l_.str.7
0x1000031DC 0x0000000E  [  2] l_.str.9
0x1000031EA 0x00000006  [  2] literal string: v8@?0
0x1000031F0 0x00000016  [  3] literal string: Default Configuration
0x100003206 0x00000005  [  3] literal string: hash
0x10000320B 0x00000005  [  3] literal string: TQ,R
0x100003210 0x0000000B  [  3] literal string: superclass
0x10000321B 0x00000005  [  3] literal string: T#,R
0x100003220 0x0000000C  [  3] literal string: description
0x10000322C 0x00000011  [  3] literal string: T@"NSString",R,C
0x10000323D 0x00000011  [  3] literal string: debugDescription
0x10000324E 0x00000007  [  3] literal string: window
0x100003255 0x00000011  [  3] literal string: T@"UIWindow",&,N
0x100003266 0x0000001A  [  5] literal string: T@"UIWindow",&,N,V_window
0x100003280 0x0000000F  [  2] literal string: ViewController
0x10000328F 0x0000000C  [  3] literal string: AppDelegate
0x10000329B 0x00000016  [  3] literal string: UIApplicationDelegate
0x1000032B1 0x00000009  [  3] literal string: NSObject
0x1000032BA 0x0000000E  [  5] literal string: SceneDelegate
0x1000032C8 0x00000016  [  5] literal string: UIWindowSceneDelegate
0x1000032DE 0x00000010  [  5] literal string: UISceneDelegate
0x1000032EE 0x00000002  [  5] literal string:
0x1000032F0 0x00000008  [  2] literal string: v16@0:8
0x1000032F8 0x0000000B  [  3] literal string: B24@0:8@16
0x100003303 0x00000008  [  3] literal string: #16@0:8
0x10000330B 0x00000008  [  3] literal string: @16@0:8
0x100003313 0x0000000B  [  3] literal string: @24@0:8:16
0x10000331E 0x0000000E  [  3] literal string: @32@0:8:16@24
0x10000332C 0x00000011  [  3] literal string: @40@0:8:16@24@32
0x10000333D 0x00000008  [  3] literal string: B16@0:8
0x100003345 0x0000000B  [  3] literal string: B24@0:8#16
0x100003350 0x0000000B  [  3] literal string: B24@0:8:16
0x10000335B 0x00000009  [  3] literal string: Vv16@0:8
0x100003364 0x00000008  [  3] literal string: Q16@0:8
0x10000336C 0x00000012  [  3] literal string: ^{_NSZone=}16@0:8
0x10000337E 0x00000015  [  3] literal string: B24@0:8@"Protocol"16
0x100003393 0x00000012  [  3] literal string: @"NSString"16@0:8
0x1000033A5 0x0000000B  [  3] literal string: v24@0:8@16
0x1000033B0 0x0000000E  [  3] literal string: B32@0:8@16@24
0x1000033BE 0x00000014  [  3] literal string: B48@0:8@16@24@32@40
0x1000033D2 0x00000011  [  3] literal string: B40@0:8@16@24@32
0x1000033E3 0x00000011  [  3] literal string: v40@0:8@16q24d32
0x1000033F4 0x0000000E  [  3] literal string: v32@0:8@16q24
0x100003402 0x0000002D  [  3] literal string: v56@0:8@16{CGRect={CGPoint=dd}{CGSize=dd}}24
0x10000342F 0x0000000E  [  3] literal string: v32@0:8@16@24
0x10000343D 0x00000015  [  3] literal string: v48@0:8@16@24@32@?40
0x100003452 0x00000018  [  3] literal string: v56@0:8@16@24@32@40@?48
0x10000346A 0x00000012  [  3] literal string: v40@0:8@16@24@?32
0x10000347C 0x0000000F  [  3] literal string: v32@0:8@16@?24
0x10000348B 0x0000000E  [  3] literal string: @32@0:8@16@24
0x100003499 0x0000000E  [  3] literal string: Q32@0:8@16@24
0x1000034A7 0x00000011  [  3] literal string: @40@0:8@16@24@32
0x1000034B8 0x00000012  [  3] literal string: B40@0:8@16@24@?32
0x1000034CA 0x00000011  [  3] literal string: v40@0:8@16@24@32
0x1000034DB 0x0000001A  [  3] literal string: v24@0:8@"UIApplication"16
0x1000034F5 0x0000002B  [  3] literal string: B32@0:8@"UIApplication"16@"NSDictionary"24
0x100003520 0x00000024  [  3] literal string: B32@0:8@"UIApplication"16@"NSURL"24
0x100003544 0x00000034  [  3] literal string: B48@0:8@"UIApplication"16@"NSURL"24@"NSString"32@40
0x100003578 0x00000035  [  3] literal string: B40@0:8@"UIApplication"16@"NSURL"24@"NSDictionary"32
0x1000035AD 0x00000020  [  3] literal string: v40@0:8@"UIApplication"16q24d32
0x1000035CD 0x0000001D  [  3] literal string: v32@0:8@"UIApplication"16q24
0x1000035EA 0x0000003C  [  3] literal string: v56@0:8@"UIApplication"16{CGRect={CGPoint=dd}{CGSize=dd}}24
0x100003626 0x00000039  [  3] literal string: v32@0:8@"UIApplication"16@"UIUserNotificationSettings"24
0x10000365F 0x00000025  [  3] literal string: v32@0:8@"UIApplication"16@"NSData"24
0x100003684 0x00000026  [  3] literal string: v32@0:8@"UIApplication"16@"NSError"24
0x1000036AA 0x0000002B  [  3] literal string: v32@0:8@"UIApplication"16@"NSDictionary"24
0x1000036D5 0x00000032  [  3] literal string: v32@0:8@"UIApplication"16@"UILocalNotification"24
0x100003707 0x00000048  [  3] literal string: v48@0:8@"UIApplication"16@"NSString"24@"UILocalNotification"32@?<v@?>40
0x10000374F 0x00000052  [  3] literal string: v56@0:8@"UIApplication"16@"NSString"24@"NSDictionary"32@"NSDictionary"40@?<v@?>48
0x1000037A1 0x00000041  [  3] literal string: v48@0:8@"UIApplication"16@"NSString"24@"NSDictionary"32@?<v@?>40
0x1000037E2 0x00000059  [  3] literal string: v56@0:8@"UIApplication"16@"NSString"24@"UILocalNotification"32@"NSDictionary"40@?<v@?>48
0x10000383B 0x00000035  [  3] literal string: v40@0:8@"UIApplication"16@"NSDictionary"24@?<v@?Q>32
0x100003870 0x00000024  [  3] literal string: v32@0:8@"UIApplication"16@?<v@?Q>24
0x100003894 0x00000042  [  3] literal string: v40@0:8@"UIApplication"16@"UIApplicationShortcutItem"24@?<v@?B>32
0x1000038D6 0x00000030  [  3] literal string: v40@0:8@"UIApplication"16@"NSString"24@?<v@?>32
0x100003906 0x00000043  [  3] literal string: v40@0:8@"UIApplication"16@"NSDictionary"24@?<v@?@"NSDictionary">32
0x100003949 0x00000027  [  3] literal string: @32@0:8@"UIApplication"16@"INIntent"24
0x100003970 0x00000043  [  3] literal string: v40@0:8@"UIApplication"16@"INIntent"24@?<v@?@"INIntentResponse">32
0x1000039B3 0x00000027  [  3] literal string: Q32@0:8@"UIApplication"16@"UIWindow"24
0x1000039DA 0x00000027  [  3] literal string: B32@0:8@"UIApplication"16@"NSString"24
0x100003A01 0x00000044  [  3] literal string: @"UIViewController"40@0:8@"UIApplication"16@"NSArray"24@"NSCoder"32
0x100003A45 0x00000026  [  3] literal string: B32@0:8@"UIApplication"16@"NSCoder"24
0x100003A6B 0x00000026  [  3] literal string: v32@0:8@"UIApplication"16@"NSCoder"24
0x100003A91 0x00000040  [  3] literal string: B40@0:8@"UIApplication"16@"NSUserActivity"24@?<v@?@"NSArray">32
0x100003AD1 0x00000033  [  3] literal string: v40@0:8@"UIApplication"16@"NSString"24@"NSError"32
0x100003B04 0x0000002D  [  3] literal string: v32@0:8@"UIApplication"16@"NSUserActivity"24
0x100003B31 0x0000002E  [  3] literal string: v32@0:8@"UIApplication"16@"CKShareMetadata"24
0x100003B5F 0x00000060  [  3] literal string: @"UISceneConfiguration"40@0:8@"UIApplication"16@"UISceneSession"24@"UISceneConnectionOptions"32
0x100003BBF 0x00000024  [  3] literal string: v32@0:8@"UIApplication"16@"NSSet"24
0x100003BE3 0x00000012  [  3] literal string: @"UIWindow"16@0:8
0x100003BF5 0x00000015  [  3] literal string: v24@0:8@"UIWindow"16
0x100003C0A 0x0000000B  [  5] literal string: @24@0:8@16
0x100003C15 0x00000044  [  5] literal string: v40@0:8@"UIScene"16@"UISceneSession"24@"UISceneConnectionOptions"32
0x100003C59 0x00000014  [  5] literal string: v24@0:8@"UIScene"16
0x100003C6D 0x0000001E  [  5] literal string: v32@0:8@"UIScene"16@"NSSet"24
0x100003C8B 0x00000024  [  5] literal string: @"NSUserActivity"24@0:8@"UIScene"16
0x100003CAF 0x00000021  [  5] literal string: v32@0:8@"UIScene"16@"NSString"24
0x100003CD0 0x00000027  [  5] literal string: v32@0:8@"UIScene"16@"NSUserActivity"24
0x100003CF7 0x0000002D  [  5] literal string: v40@0:8@"UIScene"16@"NSString"24@"NSError"32
0x100003D24 0x00000014  [  5] literal string: v48@0:8@16@24q32@40
0x100003D38 0x0000004B  [  5] literal string: v48@0:8@"UIWindowScene"16@"<UICoordinateSpace>"24q32@"UITraitCollection"40
0x100003D83 0x00000042  [  5] literal string: v40@0:8@"UIWindowScene"16@"UIApplicationShortcutItem"24@?<v@?B>32
0x100003DC5 0x0000002E  [  5] literal string: v32@0:8@"UIWindowScene"16@"CKShareMetadata"24
0x100003DF3 0x0000000C  [  5] literal string: @"UIWindow"
0x100003DFF 0x000001AA  [  1] opaque_section
0x100003FAC 0x00000048  [  0] compact unwind info
0x100004000 0x00000008  [  0] non-lazy-pointer-to-local: __NSConcreteStackBlock
0x100004008 0x00000008  [  0] non-lazy-pointer-to-local: _objc_msgSend
0x100004010 0x00000008  [  0] non-lazy-pointer-to-local: _objc_release
0x100004018 0x00000008  [  0] non-lazy-pointer-to-local: _objc_retain
0x100004020 0x00000008  [  0] non-lazy-pointer-to-local: dyld_stub_binder
0x100004028 0x00000030  [  2] ___block_descriptor_40_e8_32s_e5_v8?0l
0x100004058 0x00000020  [  2] ___block_descriptor_32_e5_v8?0l
0x100004078 0x00000020  [  2] ___block_literal_global
0x100004098 0x00000020  [  2] CFString
0x1000040B8 0x00000020  [  2] CFString
0x1000040D8 0x00000020  [  2] CFString
0x1000040F8 0x00000020  [  3] CFString
0x100004118 0x00000008  [  2] objc-cat-list
0x100004120 0x00000008  [  3] objc-cat-list
0x100004128 0x00000008  [  5] objc-cat-list
0x100004130 0x00000008  [  3] __OBJC_LABEL_PROTOCOL_$_NSObject
0x100004138 0x00000008  [  3] __OBJC_LABEL_PROTOCOL_$_UIApplicationDelegate
0x100004140 0x00000008  [  5] __OBJC_LABEL_PROTOCOL_$_UISceneDelegate
0x100004148 0x00000008  [  5] __OBJC_LABEL_PROTOCOL_$_UIWindowSceneDelegate
0x100004150 0x00000008  [  0] objc image info
0x100008000 0x00000008  [  6] _NSLog
0x100008008 0x00000008  [  6] _NSStringFromClass
0x100008010 0x00000008  [  9] _UIApplicationMain
0x100008018 0x00000008  [  8] _dispatch_async
0x100008020 0x00000008  [  8] _dispatch_get_global_queue
0x100008028 0x00000008  [  8] _dispatch_semaphore_create
0x100008030 0x00000008  [  8] _dispatch_semaphore_signal
0x100008038 0x00000008  [  8] _dispatch_semaphore_wait
0x100008040 0x00000008  [  7] _objc_alloc
0x100008048 0x00000008  [  7] _objc_autoreleasePoolPop
0x100008050 0x00000008  [  7] _objc_autoreleasePoolPush
0x100008058 0x00000008  [  7] _objc_autoreleaseReturnValue
0x100008060 0x00000008  [  7] _objc_msgSendSuper2
0x100008068 0x00000008  [  7] _objc_opt_class
0x100008070 0x00000008  [  7] _objc_retainAutoreleasedReturnValue
0x100008078 0x00000008  [  7] _objc_storeStrong
0x100008080 0x00000048  [  2] __OBJC_METACLASS_RO_$_ViewController
0x1000080C8 0x00000038  [  2] __OBJC_$_INSTANCE_METHODS_ViewController
0x100008100 0x00000048  [  2] __OBJC_CLASS_RO_$_ViewController
0x100008148 0x000001D0  [  3] __OBJC_$_PROTOCOL_INSTANCE_METHODS_NSObject
0x100008318 0x00000020  [  3] __OBJC_$_PROTOCOL_INSTANCE_METHODS_OPT_NSObject
0x100008338 0x00000048  [  3] __OBJC_$_PROP_LIST_NSObject
0x100008380 0x000000A0  [  3] __OBJC_$_PROTOCOL_METHOD_TYPES_NSObject
0x100008420 0x00000018  [  3] __OBJC_$_PROTOCOL_REFS_UIApplicationDelegate
0x100008438 0x00000518  [  3] __OBJC_$_PROTOCOL_INSTANCE_METHODS_OPT_UIApplicationDelegate
0x100008950 0x00000018  [  3] __OBJC_$_PROP_LIST_UIApplicationDelegate
0x100008968 0x000001B0  [  3] __OBJC_$_PROTOCOL_METHOD_TYPES_UIApplicationDelegate
0x100008B18 0x00000018  [  3] __OBJC_CLASS_PROTOCOLS_$_AppDelegate
0x100008B30 0x00000048  [  3] __OBJC_METACLASS_RO_$_AppDelegate
0x100008B78 0x00000050  [  3] __OBJC_$_INSTANCE_METHODS_AppDelegate
0x100008BC8 0x00000058  [  3] __OBJC_$_PROP_LIST_AppDelegate
0x100008C20 0x00000048  [  3] __OBJC_CLASS_RO_$_AppDelegate
0x100008C68 0x000001D0  [  5] __OBJC_$_PROTOCOL_INSTANCE_METHODS_NSObject
0x100008E38 0x00000020  [  5] __OBJC_$_PROTOCOL_INSTANCE_METHODS_OPT_NSObject
0x100008E58 0x00000048  [  5] __OBJC_$_PROP_LIST_NSObject
0x100008EA0 0x000000A0  [  5] __OBJC_$_PROTOCOL_METHOD_TYPES_NSObject
0x100008F40 0x00000018  [  5] __OBJC_$_PROTOCOL_REFS_UISceneDelegate
0x100008F58 0x00000128  [  5] __OBJC_$_PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate
0x100009080 0x00000060  [  5] __OBJC_$_PROTOCOL_METHOD_TYPES_UISceneDelegate
0x1000090E0 0x00000018  [  5] __OBJC_$_PROTOCOL_REFS_UIWindowSceneDelegate
0x1000090F8 0x00000080  [  5] __OBJC_$_PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate
0x100009178 0x00000018  [  5] __OBJC_$_PROP_LIST_UIWindowSceneDelegate
0x100009190 0x00000028  [  5] __OBJC_$_PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate
0x1000091B8 0x00000018  [  5] __OBJC_CLASS_PROTOCOLS_$_SceneDelegate
0x1000091D0 0x00000048  [  5] __OBJC_METACLASS_RO_$_SceneDelegate
0x100009218 0x000000E0  [  5] __OBJC_$_INSTANCE_METHODS_SceneDelegate
0x1000092F8 0x00000028  [  5] __OBJC_$_INSTANCE_VARIABLES_SceneDelegate
0x100009320 0x00000058  [  5] __OBJC_$_PROP_LIST_SceneDelegate
0x100009378 0x00000048  [  5] __OBJC_CLASS_RO_$_SceneDelegate
0x1000093C0 0x00000008  [  2] pointer-to-literal-cstring
0x1000093C8 0x00000008  [  2] pointer-to-literal-cstring
0x1000093D0 0x00000008  [  2] pointer-to-literal-cstring
0x1000093D8 0x00000008  [  3] pointer-to-literal-cstring
0x1000093E0 0x00000008  [  3] pointer-to-literal-cstring
0x1000093E8 0x00000008  [  2] objc-class-ref
0x1000093F0 0x00000008  [  3] objc-class-ref
0x1000093F8 0x00000008  [  4] objc-class-ref
0x100009400 0x00000008  [  2] anon
0x100009408 0x00000008  [  5] _OBJC_IVAR_$_SceneDelegate._window
0x100009410 0x00000028  [  2] _OBJC_CLASS_$_ViewController
0x100009438 0x00000028  [  2] _OBJC_METACLASS_$_ViewController
0x100009460 0x00000028  [  3] _OBJC_METACLASS_$_AppDelegate
0x100009488 0x00000028  [  3] _OBJC_CLASS_$_AppDelegate
0x1000094B0 0x00000028  [  5] _OBJC_METACLASS_$_SceneDelegate
0x1000094D8 0x00000028  [  5] _OBJC_CLASS_$_SceneDelegate
0x100009500 0x00000008  [  0] __dyld_private
0x100009508 0x00000060  [  3] __OBJC_PROTOCOL_$_NSObject
0x100009568 0x00000060  [  3] __OBJC_PROTOCOL_$_UIApplicationDelegate
0x1000095C8 0x00000060  [  5] __OBJC_PROTOCOL_$_UISceneDelegate
0x100009628 0x00000060  [  5] __OBJC_PROTOCOL_$_UIWindowSceneDelegate# Dead Stripped Symbols:
#           Size        File  Name
<<dead>>    0x00000018  [  2] CIE
<<dead>>    0x00000018  [  3] CIE
<<dead>>    0x00000018  [  4] CIE
<<dead>>    0x00000009  [  5] literal string: NSObject
<<dead>>    0x00000009  [  5] literal string: isEqual:
<<dead>>    0x00000006  [  5] literal string: class
<<dead>>    0x00000005  [  5] literal string: self
<<dead>>    0x00000011  [  5] literal string: performSelector:
<<dead>>    0x0000001C  [  5] literal string: performSelector:withObject:
<<dead>>    0x00000027  [  5] literal string: performSelector:withObject:withObject:
<<dead>>    0x00000008  [  5] literal string: isProxy
<<dead>>    0x0000000F  [  5] literal string: isKindOfClass:
<<dead>>    0x00000011  [  5] literal string: isMemberOfClass:
<<dead>>    0x00000014  [  5] literal string: conformsToProtocol:
<<dead>>    0x00000014  [  5] literal string: respondsToSelector:
<<dead>>    0x00000007  [  5] literal string: retain
<<dead>>    0x00000008  [  5] literal string: release
<<dead>>    0x0000000C  [  5] literal string: autorelease
<<dead>>    0x0000000C  [  5] literal string: retainCount
<<dead>>    0x00000005  [  5] literal string: zone
<<dead>>    0x00000005  [  5] literal string: hash
<<dead>>    0x0000000B  [  5] literal string: superclass
<<dead>>    0x0000000C  [  5] literal string: description
<<dead>>    0x00000011  [  5] literal string: debugDescription
<<dead>>    0x00000007  [  5] literal string: window
<<dead>>    0x0000000B  [  5] literal string: setWindow:
<<dead>>    0x0000000B  [  5] literal string: B24@0:8@16
<<dead>>    0x00000008  [  5] literal string: #16@0:8
<<dead>>    0x00000008  [  5] literal string: @16@0:8
<<dead>>    0x0000000B  [  5] literal string: @24@0:8:16
<<dead>>    0x0000000E  [  5] literal string: @32@0:8:16@24
<<dead>>    0x00000011  [  5] literal string: @40@0:8:16@24@32
<<dead>>    0x00000008  [  5] literal string: B16@0:8
<<dead>>    0x0000000B  [  5] literal string: B24@0:8#16
<<dead>>    0x0000000B  [  5] literal string: B24@0:8:16
<<dead>>    0x00000009  [  5] literal string: Vv16@0:8
<<dead>>    0x00000008  [  5] literal string: Q16@0:8
<<dead>>    0x00000012  [  5] literal string: ^{_NSZone=}16@0:8
<<dead>>    0x00000015  [  5] literal string: B24@0:8@"Protocol"16
<<dead>>    0x00000012  [  5] literal string: @"NSString"16@0:8
<<dead>>    0x00000011  [  5] literal string: v40@0:8@16@24@32
<<dead>>    0x0000000B  [  5] literal string: v24@0:8@16
<<dead>>    0x0000000E  [  5] literal string: v32@0:8@16@24
<<dead>>    0x00000012  [  5] literal string: v40@0:8@16@24@?32
<<dead>>    0x00000012  [  5] literal string: @"UIWindow"16@0:8
<<dead>>    0x00000015  [  5] literal string: v24@0:8@"UIWindow"16
<<dead>>    0x00000008  [  5] literal string: v16@0:8
<<dead>>    0x00000005  [  5] literal string: hash
<<dead>>    0x00000005  [  5] literal string: TQ,R
<<dead>>    0x0000000B  [  5] literal string: superclass
<<dead>>    0x00000005  [  5] literal string: T#,R
<<dead>>    0x0000000C  [  5] literal string: description
<<dead>>    0x00000011  [  5] literal string: T@"NSString",R,C
<<dead>>    0x00000011  [  5] literal string: debugDescription
<<dead>>    0x00000007  [  5] literal string: window
<<dead>>    0x00000011  [  5] literal string: T@"UIWindow",&,N
<<dead>>    0x00000018  [  5] CIE

分成三个部分

001 路径部分 展示生成相关文件的路径

Path是.app文件路径

Object file是.o文件路径

002 section部分 展示相关地址段

Mach-O文件的虚地址最终会映射到物理地址上

  • __TEXT 包含 Mach header,被执行的代码和只读常量(如C 字符串),只读可执行(r-x)。
  • __DATA 包含全局变量,静态变量等,可读写(rw-)。
  • __LINKEDIT 包含了加载程序的元数据,比如函数的名称和地址,只读(r–)。

__TEXT段中的 Section

字段 说明
__text 代码节,存放机器编译后的代码
__stubs 用于辅助做动态链接代码(dyld
__stub_helper 用于辅助做动态链接
__objc_methname objc的方法名称
__stub_helper 用于辅助做动态链接
__cstring 代码运行中包含的字符串常量, 
例:#define kKey @"123"
123会存在这个区里
__objc_classname 类名
__objc_methtype 方法类型
__ustring  
__gcc_except_tab  
__const 存储const修饰的常量
__dof_RACSignal  
__dof_RACCompou  
__unwind_info  

__DATA段中的 Section

字段 说明
__got 存储引用符号的实际地址,类似于动态符号表
__la_symbol_ptr lazy symbol pointers。
懒加载的函数指针地址。
配合__stubsstub_helper使用。
__mod_init_func 模块初始化的方法
__const 存储constant常量的数据。
比如使用extern导出的const修饰的常量。
__cfstring Core Foundation 字符串
__objc_classlist OC类列表和类信息
映射了__objc_data的地址
__objc_nlclslist OC 的 +load 函数列表,
比  __mod_init_func 更早执行
__objc_catlist categories
__objc_nlcatlist categories+load`函数列表
__objc_protolist 协议列表
__objc_imageinfo 镜像信息
__objc_const OC常量。保存objc_classdata结构体数据。
用于映射类相关数据的地址,比如类名,方法名等
__objc_selrefs 引用的 OC 方法
__objc_protorefs 引用的 OC 协议
__objc_classrefs 引用的 OC 类
__objc_superrefs 引用的 OC超类
__objc_ivar ivar指针
__objc_data 用于保存类需要的数据。
最主要的内容是映射__objc_const地址,
找到类的相关数据。
__data 存放了协议和已经初始化的静态量
__bss 存储未初始化的静态量
__common 存储导出的全局的数据

003 Symbols部分 方法符号段

  • Address:方法代码的地址
  • Size:方法占用的空间
  • File:文件的编号
  • Name.o文件里面的方法符号

Symbols 部分的 File 顺序是和 Target -> Build Phase -> Compile Sources 的文件顺序一致的。

参考资料

研读 项目名-LinkMap-normal-x86_64.txt相关推荐

  1. web核心 8-filter过滤器 listener监听器 相对路径 绝对路径 项目名路径

    内容介绍 1.Filter过滤器 2.listener监听器 Filter过滤器 概述 web服务器端有三大技术:Servlet Filter Listener Servlet:本质上是一个类,这个类 ...

  2. tomcat部署 修改域名和访问域名时去掉项目名

    修改域名和访问域名时去掉项目名 1.修改端口为80端口 因为80端口是为HTTP(HyperText Transport Protocol)即超文本传输协议开放的,浏览网页服务默认的端口号都是80,因 ...

  3. GTK+ 项目名终于去掉了那个加号

    开发四年只会写业务代码,分布式高并发都不会还做程序员?   经过广泛讨论,GTK+ 团队决定将项目名中的加号"+"移除,重命名"GTK+"为"GTK& ...

  4. Velocity笔记--使用Velocity获取动态Web项目名的问题

    以前使用jsp开发的时候,可以通过request很轻松的获取到根项目名,现在换到使用velocity渲染视图,因为已经不依赖servlet,request等一些类的环境,而Web项目的根项目名又不是写 ...

  5. 查找python项目依赖并生成requirements.txt——pipreqs 真是很好用啊

    查找python项目依赖并生成requirements.txt 转自:http://blog.csdn.net/orangleliu/article/details/60958525 一起开发项目的时 ...

  6. 在Visual Studio 2019中修改项目名

    在Visual Studio 2019中修改项目名 文章目录 在Visual Studio 2019中修改项目名 1.需求场景 2.操作步骤 2.1 重命名解决方案 2.2 重命名项目名 2.3 修改 ...

  7. Java中获取域名、端口号、项目名等实现路径适配

    场景 同一个项目部署在两个服务器上,域名和端口号不同. 在实现照片上传时需要进行路径的适配. 能根据不同的服务器赋予不同的路径. 实现 @Description("图片保存")@R ...

  8. SpringBoot指定服务项目名

    使用不同SpringBoot版本,指定访问项目路径的项目名,使用的配置也不一样 SpringBoot版本 配置 1.x server.context-path=/demo 2.x server.ser ...

  9. 如何修改VC6的项目名

    为何要改项目名称: ===================================== 如:我的项目和另一个重名了,在VC中如何才能改成别的项目名字.      我想重用别人的项目框架,但我不 ...

最新文章

  1. MongoDB:逐渐变得无关紧要
  2. spring mvc+spring + hibernate 整合(二)
  3. boost::detail模块实现数字特征的测试程序
  4. 庖丁解牛TLD(三)——算法初始化
  5. 关于在用异步消息处理机制使用Message.Obtain()方法(而非New Message)获得一个Message对象的好处
  6. Qt学习笔记-带TCP数据传输的局域网聊天软件
  7. C#图片处理之:最简单的柔化算法
  8. java 云服务器 linux,云服务器Linux部署JavaWeb项目
  9. Android:微信(二):解决问题
  10. 常用坐标系汇总(更新)
  11. MySQL和Navicat基本使用
  12. COOKIE与SESSION比较
  13. 《论语》全译——子路篇第十三
  14. WPF加载SVG格式的图片
  15. 【机器学习】Python 3.0 简单实现K-邻近法
  16. RS485通信--AT_SURF案例No.10
  17. 【华为OD机试 2023最新 】找数字、找等值元素(C++ 100%)
  18. Fourth4: NAT VRRP | Cloud computing
  19. 块级元素、行内元素及行内块元素
  20. input标签的默认样式导致的左上边框和右下边框颜色不一致问题

热门文章

  1. php 修改图片dpi,PHP修改PNG图片DPI
  2. MAC OS X mountain lion强制关机
  3. Mac电脑程序无响应怎么办?mac强制关闭软件的6种方法
  4. 第6章第27节:画面太空怎么办:使用小元素填充空旷的版面 [PowerPoint精美幻灯片实战教程]
  5. 局域网搭建php_phpstudy8.0版本怎么搭建局域网
  6. 常见的GC算法(GC的背景与原理)
  7. Windows ActiveMq开机自启动设置
  8. 华为鸿蒙2.0来了,挑战谷歌安卓APP成关键?
  9. Android 贝塞尔曲线实战之网易云音乐鲸云特效
  10. 跨平台移动框架iMAG开发入门