backboardd

From The iPhone Wiki
Jump to: navigation, search

backboardd is a daemon that runs alongside the SpringBoard daemon. It has been introduced in iOS 6, aiming to offload some of Springboard's responsibilities, chiefly that of event handling. Prior to its introduction, SpringBoard was effectively the UI event sink for iOS, as is WindowServer in OS X. With backboardd, all touch events are first processed by this daemon, then translated and relayed to the iOS application in the foreground (i.e. to its UIApplication event loop).


As a simple experiment, login over SSH to send a kill -STOP signal to the daemon, then touch your device. If you kill -CONT the daemon, you will see your touch events played out, as the events are consumed from I/O Kit by backboardd, and relayed to the foreground app.


The backboardd is also responsible for automatic screen dimming (via AutoBrightness and Backlight plugins) as well as opening and holding icon states for Springboard. This can be easily verified with an output of "lsof":

Padmi:~ root# ./lsof-arm7-iOS4.2  -p 64            
COMMAND   PID   USER   FD     TYPE     DEVICE  SIZE/OFF   NODE NAME
backboard  64 mobile  cwd      DIR        1,2       884      2 /
backboard  64 mobile  txt      REG        1,3    333104 435969 /private/var/stash/libexec.hIXve8/backboardd
backboard  64 mobile  txt      REG        1,2  39067948  42342 /System/Library/Frameworks/UIKit.framework/Shared@2x.artwork
backboard  64 mobile  txt      REG        1,3      8902 439760 /private/var/mobile/Library/Caches/com.apple.springboard.sharedimagecache/Persistent/NewsstandApplicationIconOverlay.cpbitmap
backboard  64 mobile  txt      REG        1,3   5767168 601899 /private/var/tmp/iconLabels_gray.V8prSQ
backboard  64 mobile  txt      REG        1,3     26694 439757 /private/var/mobile/Library/Caches/com.apple.springboard.sharedimagecache/Persistent/NewsstandShadowTopNotch.cpbitmap
backboard  64 mobile  txt      REG        1,3  19400560 436078 /private/var/stash/share.xUDAtn/icu/icudt49l.dat
backboard  64 mobile  txt      REG        1,2    120336  34879 /System/Library/Extensions/AppleMultitouchSPI.kext/PlugIns/MultitouchHID.plugin/MultitouchHID
backboard  64 mobile  txt      REG        1,2     70096  11359 /System/Library/HIDPlugins/AutoBrightness.plugin/AutoBrightness
backboard  64 mobile  txt      REG        1,2     27312  11354 /System/Library/HIDPlugins/Backlight.plugin/Backlight
backboard  64 mobile  txt      REG        1,3     20480 439566 /private/var/mobile/Library/Caches/com.apple.keyboards/images/3064683122736642270
backboard  64 mobile  txt      REG        1,3     65536 439565 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831221284115396
backboard  64 mobile  txt      REG        1,3     94880 601950 /private/var/mobile/Library/Caches/com.apple.IconsCache/com.klausthul.ktdictce_defaultRole-Icon.png_Icon@2x.png_Icon-Small.png_Icon-Small@2x.png_Icon-72.png_Icon-72@2x.png_Icon-Small-50.png_Icon-Small-50@2x.png-37
backboard  64 mobile  txt      REG        1,3  12140544 601932 /private/var/tmp/iconImages.eXOvjh
backboard  64 mobile  txt      REG        1,3     24576 511984 /private/var/mobile/Library/Caches/com.apple.keyboards/images/3064683122770392540
backboard  64 mobile  txt      REG        1,2    115152    779 /System/Library/AccessibilityBundles/BackBoard.axbundle/BackBoard
backboard  64 mobile  txt      REG        1,3     65536 439564 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831223638791652
backboard  64 mobile  txt      REG        1,3  12140544 601961 /private/var/tmp/ghostlyIcons.4GmCvg
backboard  64 mobile  txt      REG        1,3     65536 439657 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831221447664047
backboard  64 mobile  txt      REG        1,3     65536 439561 /private/var/mobile/Library/Caches/com.apple.keyboards/images/3064683122596967800
backboard  64 mobile  txt      REG        1,3     69632 439563 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831221404757235
backboard  64 mobile  txt      REG        1,3     81920 439656 /private/var/mobile/Library/Caches/com.apple.keyboards/images/3064683122477341617
backboard  64 mobile  txt      REG        1,3     65536 439556 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831221855203170
backboard  64 mobile  txt      REG        1,3     94208 439581 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831223601320839
backboard  64 mobile  txt      REG        1,3     94208 439580 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831222319862850
backboard  64 mobile  txt      REG        1,3     81920 439557 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831224201689474
backboard  64 mobile  txt      REG        1,3     65536 439570 /private/var/mobile/Library/Caches/com.apple.keyboards/images/3064683122373921450
backboard  64 mobile  txt      REG        1,3    110592 439655 /private/var/mobile/Library/Caches/com.apple.keyboards/images/3064683122583137537
backboard  64 mobile  txt      REG        1,3     94880 601955 /private/var/mobile/Library/Caches/com.apple.IconsCache/com.touchpress.orchestra_defaultRole-Icon-72_Icon-Small-50_Icon-Small_Icon-37
backboard  64 mobile  txt      REG        1,2   8353196  42333 /System/Library/Frameworks/UIKit.framework/Shared@2x~ipad.artwork
backboard  64 mobile  txt      REG        1,3     92486 426595 /private/var/mobile/Library/Caches/com.apple.springboard.sharedimagecache/Persistent/WallpaperIconDockShadow.cpbitmap
backboard  64 mobile  txt      REG        1,3     94880 601960 /private/var/mobile/Library/Caches/com.apple.IconsCache/com.apple.mobilesafari_CFBundleIcon[37]
backboard  64 mobile  txt      REG        1,3     94880 601962 /private/var/mobile/Library/Caches/com.apple.IconsCache/com.apple.mobilemail_CFBundleIcon[37]
backboard  64 mobile  txt      REG        1,3     81920 439560 /private/var/mobile/Library/Caches/com.apple.keyboards/images/30646831222343767418
... etc.. etc..