SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Downloaden Sie, um offline zu lesen
Frame 0x33
Presenter: Dmitry Vostokov
Sponsors
Debugging.TV
• Spiking Thread pattern (Android)
• Deadlock pattern (Android)
• ADB
• Paratext pattern (Android)
Topics
© 2013 Software Diagnostics Institute
Spiking Thread
© 2013 Software Diagnostics Institute
(new Thread(new Runnable() { // Thread #11
public void run() {
while (true) {
double num = Math.random();
}
}
})).start();
09-08 22:38:54.629: I/System.out(21804): Thread[main,5,main]:
09-08 22:38:54.629: I/System.out(21804): android.os.MessageQueue.nativePollOnce(Native Method)
09-08 22:38:54.629: I/System.out(21804): android.os.MessageQueue.next(MessageQueue.java:119)
09-08 22:38:54.629: I/System.out(21804): android.os.Looper.loop(Looper.java:117)
09-08 22:38:54.629: I/System.out(21804): android.app.ActivityThread.main(ActivityThread.java:3687)
09-08 22:38:54.639: I/System.out(21804): java.lang.reflect.Method.invokeNative(Native Method)
09-08 22:38:54.639: I/System.out(21804): java.lang.reflect.Method.invoke(Method.java:507)
09-08 22:38:54.639: I/System.out(21804):
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
09-08 22:38:54.639: I/System.out(21804):
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
09-08 22:38:54.639: I/System.out(21804): dalvik.system.NativeStart.main(Native Method)
09-08 20:12:03.779: I/System.out(20147): Thread[Thread-11,5,main]:
09-08 20:12:03.789: I/System.out(20147): java.util.Random.next(Random.java:90)
09-08 20:12:03.789: I/System.out(20147): java.util.Random.nextDouble(Random.java:122)
09-08 20:12:03.789: I/System.out(20147): java.lang.Math.random(Math.java:965)
09-08 20:12:03.789: I/System.out(20147):
com.example.spikingthread.FullscreenActivity$6$1.run(FullscreenActivity.java:150)
09-08 20:12:03.789: I/System.out(20147): java.lang.Thread.run(Thread.java:1019)
Deadlock
© 2013 Software Diagnostics Institute
public void run() { // Thread #11
synchronized(cs1) {
try { Thread.sleep(2000); } catch (InterruptedException e) {}
synchronized(cs2) {
try { Thread.sleep(1000); } catch (InterruptedException e) {}
}
}
}
public void run() { // Thread #12
synchronized(cs2) {
try { Thread.sleep(4000); } catch (InterruptedException e) {}
synchronized(cs1) {
try { Thread.sleep(1000); } catch (InterruptedException e) {}
}
}
}
09-08 22:38:54.629: I/System.out(21804): Thread[Thread-11,5,main]:
09-08 22:38:54.629: I/System.out(21804):
com.example.deadlock.FullscreenActivity$6$1.run(FullscreenActivity.java:157)
09-08 22:38:54.629: I/System.out(21804): java.lang.Thread.run(Thread.java:1019)
09-08 22:38:54.639: I/System.out(21804): Thread[Thread-12,5,main]:
09-08 22:38:54.639: I/System.out(21804):
com.example.deadlock.FullscreenActivity$6$2.run(FullscreenActivity.java:177)
09-08 22:38:54.639: I/System.out(21804): java.lang.Thread.run(Thread.java:1019)
ADB session…
© 2013 Software Diagnostics Institute
Paratext
© 2013 Software Diagnostics Institute
$ ps -t
[…]
app_57 21600 93 146880 19352 ffffffff 00000000 S com.example.spikingthread
app_57 21601 21600 146880 19352 ffffffff 00000000 S HeapWorker
app_57 21602 21600 146880 19352 ffffffff 00000000 S GC
app_57 21603 21600 146880 19352 ffffffff 00000000 S Signal Catcher
app_57 21604 21600 146880 19352 ffffffff 00000000 S JDWP
app_57 21605 21600 146880 19352 ffffffff 00000000 S Compiler
app_57 21606 21600 146880 19352 ffffffff 00000000 S Binder Thread #
app_57 21607 21600 146880 19352 ffffffff 00000000 S Binder Thread #
app_57 21608 21600 146880 19352 ffffffff 00000000 S Thread-10
app_57 21611 21600 146880 19352 ffffffff 00000000 R Thread-11
shell 21619 143 800 336 c00a6fc8 afd0c3bc S /system/bin/sh
root 21631 2 0 0 ffffffff 00000000 S flush-138:13
app_68 21635 93 151092 18456 ffffffff 00000000 S com.example.deadlock
app_68 21636 21635 151092 18456 ffffffff 00000000 S HeapWorker
app_68 21637 21635 151092 18456 ffffffff 00000000 S GC
app_68 21638 21635 151092 18456 ffffffff 00000000 S Signal Catcher
app_68 21639 21635 151092 18456 ffffffff 00000000 S JDWP
app_68 21640 21635 151092 18456 ffffffff 00000000 S Compiler
app_68 21641 21635 151092 18456 ffffffff 00000000 S Binder Thread #
app_68 21642 21635 151092 18456 ffffffff 00000000 S Binder Thread #
app_68 21643 21635 151092 18456 ffffffff 00000000 S Thread-10
app_68 21650 21635 151092 18456 ffffffff 00000000 S Thread-11
app_68 21652 21635 151092 18456 ffffffff 00000000 S Thread-12
[…]
!Ad Hardcore Software Diagnostics Training
Sep - Nov, 2013
Mobile Software Diagnostics (FREE)
Psychology of Software Diagnostics (FREE)
Semiotics of Debugging (FREE)
Generative Software Narratology (FREE)
Software Diagnostics: Requirements, Architecture,
Design, Implementation and Improvement (FREE)
October 25-28, 2013
Accelerated Disassembly, Reconstruction and
Reversing
November 15-25, 2013 Accelerated Windows Memory Dump Analysis
© 2013 Software Diagnostics Institute
Debugging.TV
Now on YouTube!
http://www.youtube.com/DebuggingTV

Weitere ähnliche Inhalte

Was ist angesagt?

Spice Park Free Spice Model 06MAY2015
Spice Park Free Spice Model 06MAY2015Spice Park Free Spice Model 06MAY2015
Spice Park Free Spice Model 06MAY2015
Tsuyoshi Horigome
 
Spice Park 238 Free Spice Model 15 MAY2015
Spice Park 238 Free Spice Model 15 MAY2015Spice Park 238 Free Spice Model 15 MAY2015
Spice Park 238 Free Spice Model 15 MAY2015
Tsuyoshi Horigome
 
Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...
Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...
Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...
ufjjjsekkkem
 
Dons Brief work history-2
Dons Brief work history-2Dons Brief work history-2
Dons Brief work history-2
Don Ghilardi
 
KPI_Mace_&_NonMace_WK03_20160121
KPI_Mace_&_NonMace_WK03_20160121KPI_Mace_&_NonMace_WK03_20160121
KPI_Mace_&_NonMace_WK03_20160121
Romedil Dano
 
Dons brief work history 2
Dons brief work history 2Dons brief work history 2
Dons brief work history 2
Don Ghilardi
 

Was ist angesagt? (17)

Spice Park Free Spice Model 06MAY2015
Spice Park Free Spice Model 06MAY2015Spice Park Free Spice Model 06MAY2015
Spice Park Free Spice Model 06MAY2015
 
Spice Park 238 Free Spice Model 15 MAY2015
Spice Park 238 Free Spice Model 15 MAY2015Spice Park 238 Free Spice Model 15 MAY2015
Spice Park 238 Free Spice Model 15 MAY2015
 
Update 41 models(LED) in SPICE PARK(NOV2020)
Update 41 models(LED) in SPICE PARK(NOV2020) Update 41 models(LED) in SPICE PARK(NOV2020)
Update 41 models(LED) in SPICE PARK(NOV2020)
 
Update 30 models(LED) in SPICE PARK(OCT2020)
Update 30 models(LED) in SPICE PARK(OCT2020) Update 30 models(LED) in SPICE PARK(OCT2020)
Update 30 models(LED) in SPICE PARK(OCT2020)
 
SPICE PARK (4,818 Models)
SPICE PARK (4,818 Models)SPICE PARK (4,818 Models)
SPICE PARK (4,818 Models)
 
Spice park Free Spice Model(23APR2015)
Spice park Free Spice Model(23APR2015)Spice park Free Spice Model(23APR2015)
Spice park Free Spice Model(23APR2015)
 
Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...
Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...
Mc cormick fxl techno tier 2 (2003 2008) - rp52 - f95 fgexl tractor service r...
 
Dons Brief work history-2
Dons Brief work history-2Dons Brief work history-2
Dons Brief work history-2
 
KPI_Mace_&_NonMace_WK03_20160121
KPI_Mace_&_NonMace_WK03_20160121KPI_Mace_&_NonMace_WK03_20160121
KPI_Mace_&_NonMace_WK03_20160121
 
LG CRT TV MODEL Ct 21q92ke
LG CRT TV MODEL Ct 21q92keLG CRT TV MODEL Ct 21q92ke
LG CRT TV MODEL Ct 21q92ke
 
Dons brief work history 2
Dons brief work history 2Dons brief work history 2
Dons brief work history 2
 
Brief Work History 2
Brief Work History 2Brief Work History 2
Brief Work History 2
 
Update Data of FEB2014 in SPICEPARK
Update Data of FEB2014 in SPICEPARKUpdate Data of FEB2014 in SPICEPARK
Update Data of FEB2014 in SPICEPARK
 
SPICE MODEL of 2SA2154MFV-Y in SPICE PARK
SPICE MODEL of 2SA2154MFV-Y in SPICE PARKSPICE MODEL of 2SA2154MFV-Y in SPICE PARK
SPICE MODEL of 2SA2154MFV-Y in SPICE PARK
 
Ficstar Software: Cassandra Installation to Optimization
Ficstar Software: Cassandra Installation to OptimizationFicstar Software: Cassandra Installation to Optimization
Ficstar Software: Cassandra Installation to Optimization
 
2012年9月度アップデートのスパイスモデルリスト
2012年9月度アップデートのスパイスモデルリスト2012年9月度アップデートのスパイスモデルリスト
2012年9月度アップデートのスパイスモデルリスト
 
RN1418 LTspice Model (Free SPICE Model)
RN1418 LTspice Model (Free SPICE Model)RN1418 LTspice Model (Free SPICE Model)
RN1418 LTspice Model (Free SPICE Model)
 

Ähnlich wie Debugging TV Frame 0x33

Crash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_TizenCrash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_Tizen
Lex Yu
 

Ähnlich wie Debugging TV Frame 0x33 (20)

Mobile Software Diagnostics
Mobile Software DiagnosticsMobile Software Diagnostics
Mobile Software Diagnostics
 
Seriales
SerialesSeriales
Seriales
 
SERIALES
SERIALES SERIALES
SERIALES
 
Gal20 v8datasheet
Gal20 v8datasheetGal20 v8datasheet
Gal20 v8datasheet
 
NetApp ontap simulator
NetApp ontap simulatorNetApp ontap simulator
NetApp ontap simulator
 
Secrets of building a debuggable runtime: Learn how language implementors sol...
Secrets of building a debuggable runtime: Learn how language implementors sol...Secrets of building a debuggable runtime: Learn how language implementors sol...
Secrets of building a debuggable runtime: Learn how language implementors sol...
 
pdfcoffee.com_e11is2-rev-c-schematics-pdf-free.pdf
pdfcoffee.com_e11is2-rev-c-schematics-pdf-free.pdfpdfcoffee.com_e11is2-rev-c-schematics-pdf-free.pdf
pdfcoffee.com_e11is2-rev-c-schematics-pdf-free.pdf
 
LG DA0LG2MB6D0 REV D PDF.pdf
LG DA0LG2MB6D0 REV D PDF.pdfLG DA0LG2MB6D0 REV D PDF.pdf
LG DA0LG2MB6D0 REV D PDF.pdf
 
chris-bake.pdf
chris-bake.pdfchris-bake.pdf
chris-bake.pdf
 
HackLU 2018 Make ARM Shellcode Great Again
HackLU 2018 Make ARM Shellcode Great AgainHackLU 2018 Make ARM Shellcode Great Again
HackLU 2018 Make ARM Shellcode Great Again
 
How To Build Android for ARM Chip boards
How To Build Android for ARM Chip boardsHow To Build Android for ARM Chip boards
How To Build Android for ARM Chip boards
 
Introducing Intelligence Into Your Malware Analysis
Introducing Intelligence Into Your Malware AnalysisIntroducing Intelligence Into Your Malware Analysis
Introducing Intelligence Into Your Malware Analysis
 
Network Docs
Network DocsNetwork Docs
Network Docs
 
Make ARM Shellcode Great Again - HITB2018PEK
Make ARM Shellcode Great Again - HITB2018PEKMake ARM Shellcode Great Again - HITB2018PEK
Make ARM Shellcode Great Again - HITB2018PEK
 
IPv6 tools
IPv6 toolsIPv6 tools
IPv6 tools
 
SmartZone 5.0
SmartZone 5.0SmartZone 5.0
SmartZone 5.0
 
Top-5-production-devconMunich-2023-v2.pptx
Top-5-production-devconMunich-2023-v2.pptxTop-5-production-devconMunich-2023-v2.pptx
Top-5-production-devconMunich-2023-v2.pptx
 
Crash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_TizenCrash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_Tizen
 
Bsides
BsidesBsides
Bsides
 
Kernel Recipes 2013 - Deciphering Oopsies
Kernel Recipes 2013 - Deciphering OopsiesKernel Recipes 2013 - Deciphering Oopsies
Kernel Recipes 2013 - Deciphering Oopsies
 

Mehr von Dmitry Vostokov

Mehr von Dmitry Vostokov (20)

Accelerated Windows Debugging 3 training public slides
Accelerated Windows Debugging 3 training public slidesAccelerated Windows Debugging 3 training public slides
Accelerated Windows Debugging 3 training public slides
 
Accelerated .NET Memory Dump Analysis training public slides
Accelerated .NET Memory Dump Analysis training public slidesAccelerated .NET Memory Dump Analysis training public slides
Accelerated .NET Memory Dump Analysis training public slides
 
Debugging TV Frame 0x1C
Debugging TV Frame 0x1CDebugging TV Frame 0x1C
Debugging TV Frame 0x1C
 
Debugging TV Frame 0x1A
Debugging TV Frame 0x1ADebugging TV Frame 0x1A
Debugging TV Frame 0x1A
 
Debugging TV Frame 0x34
Debugging TV Frame 0x34Debugging TV Frame 0x34
Debugging TV Frame 0x34
 
Debugging TV Frame 0x31
Debugging TV Frame 0x31Debugging TV Frame 0x31
Debugging TV Frame 0x31
 
Debugging TV Frame 0x25
Debugging TV Frame 0x25Debugging TV Frame 0x25
Debugging TV Frame 0x25
 
Debugging TV Frame 0x24
Debugging TV Frame 0x24Debugging TV Frame 0x24
Debugging TV Frame 0x24
 
Debugging TV Frame 0x21
Debugging TV Frame 0x21Debugging TV Frame 0x21
Debugging TV Frame 0x21
 
Debugging TV Frame 0x20
Debugging TV Frame 0x20Debugging TV Frame 0x20
Debugging TV Frame 0x20
 
Debugging TV Frame 0x19
Debugging TV Frame 0x19Debugging TV Frame 0x19
Debugging TV Frame 0x19
 
Debugging TV Frame 0x18
Debugging TV Frame 0x18Debugging TV Frame 0x18
Debugging TV Frame 0x18
 
Debugging TV Frame 0x17
Debugging TV Frame 0x17Debugging TV Frame 0x17
Debugging TV Frame 0x17
 
Debugging TV Frame 0x16
Debugging TV Frame 0x16Debugging TV Frame 0x16
Debugging TV Frame 0x16
 
Debugging TV Frame 0x15
Debugging TV Frame 0x15Debugging TV Frame 0x15
Debugging TV Frame 0x15
 
Debugging TV Frame 0x14
Debugging TV Frame 0x14Debugging TV Frame 0x14
Debugging TV Frame 0x14
 
Debugging TV Frame 0x13
Debugging TV Frame 0x13Debugging TV Frame 0x13
Debugging TV Frame 0x13
 
Debugging TV Frame 0x12
Debugging TV Frame 0x12Debugging TV Frame 0x12
Debugging TV Frame 0x12
 
Debugging TV Frame 0x11
Debugging TV Frame 0x11Debugging TV Frame 0x11
Debugging TV Frame 0x11
 
Debugging TV Frame 0x10
Debugging TV Frame 0x10Debugging TV Frame 0x10
Debugging TV Frame 0x10
 

Kürzlich hochgeladen

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 

Kürzlich hochgeladen (20)

%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 

Debugging TV Frame 0x33

  • 1. Frame 0x33 Presenter: Dmitry Vostokov Sponsors Debugging.TV
  • 2. • Spiking Thread pattern (Android) • Deadlock pattern (Android) • ADB • Paratext pattern (Android) Topics © 2013 Software Diagnostics Institute
  • 3. Spiking Thread © 2013 Software Diagnostics Institute (new Thread(new Runnable() { // Thread #11 public void run() { while (true) { double num = Math.random(); } } })).start(); 09-08 22:38:54.629: I/System.out(21804): Thread[main,5,main]: 09-08 22:38:54.629: I/System.out(21804): android.os.MessageQueue.nativePollOnce(Native Method) 09-08 22:38:54.629: I/System.out(21804): android.os.MessageQueue.next(MessageQueue.java:119) 09-08 22:38:54.629: I/System.out(21804): android.os.Looper.loop(Looper.java:117) 09-08 22:38:54.629: I/System.out(21804): android.app.ActivityThread.main(ActivityThread.java:3687) 09-08 22:38:54.639: I/System.out(21804): java.lang.reflect.Method.invokeNative(Native Method) 09-08 22:38:54.639: I/System.out(21804): java.lang.reflect.Method.invoke(Method.java:507) 09-08 22:38:54.639: I/System.out(21804): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867) 09-08 22:38:54.639: I/System.out(21804): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625) 09-08 22:38:54.639: I/System.out(21804): dalvik.system.NativeStart.main(Native Method) 09-08 20:12:03.779: I/System.out(20147): Thread[Thread-11,5,main]: 09-08 20:12:03.789: I/System.out(20147): java.util.Random.next(Random.java:90) 09-08 20:12:03.789: I/System.out(20147): java.util.Random.nextDouble(Random.java:122) 09-08 20:12:03.789: I/System.out(20147): java.lang.Math.random(Math.java:965) 09-08 20:12:03.789: I/System.out(20147): com.example.spikingthread.FullscreenActivity$6$1.run(FullscreenActivity.java:150) 09-08 20:12:03.789: I/System.out(20147): java.lang.Thread.run(Thread.java:1019)
  • 4. Deadlock © 2013 Software Diagnostics Institute public void run() { // Thread #11 synchronized(cs1) { try { Thread.sleep(2000); } catch (InterruptedException e) {} synchronized(cs2) { try { Thread.sleep(1000); } catch (InterruptedException e) {} } } } public void run() { // Thread #12 synchronized(cs2) { try { Thread.sleep(4000); } catch (InterruptedException e) {} synchronized(cs1) { try { Thread.sleep(1000); } catch (InterruptedException e) {} } } } 09-08 22:38:54.629: I/System.out(21804): Thread[Thread-11,5,main]: 09-08 22:38:54.629: I/System.out(21804): com.example.deadlock.FullscreenActivity$6$1.run(FullscreenActivity.java:157) 09-08 22:38:54.629: I/System.out(21804): java.lang.Thread.run(Thread.java:1019) 09-08 22:38:54.639: I/System.out(21804): Thread[Thread-12,5,main]: 09-08 22:38:54.639: I/System.out(21804): com.example.deadlock.FullscreenActivity$6$2.run(FullscreenActivity.java:177) 09-08 22:38:54.639: I/System.out(21804): java.lang.Thread.run(Thread.java:1019)
  • 5. ADB session… © 2013 Software Diagnostics Institute
  • 6. Paratext © 2013 Software Diagnostics Institute $ ps -t […] app_57 21600 93 146880 19352 ffffffff 00000000 S com.example.spikingthread app_57 21601 21600 146880 19352 ffffffff 00000000 S HeapWorker app_57 21602 21600 146880 19352 ffffffff 00000000 S GC app_57 21603 21600 146880 19352 ffffffff 00000000 S Signal Catcher app_57 21604 21600 146880 19352 ffffffff 00000000 S JDWP app_57 21605 21600 146880 19352 ffffffff 00000000 S Compiler app_57 21606 21600 146880 19352 ffffffff 00000000 S Binder Thread # app_57 21607 21600 146880 19352 ffffffff 00000000 S Binder Thread # app_57 21608 21600 146880 19352 ffffffff 00000000 S Thread-10 app_57 21611 21600 146880 19352 ffffffff 00000000 R Thread-11 shell 21619 143 800 336 c00a6fc8 afd0c3bc S /system/bin/sh root 21631 2 0 0 ffffffff 00000000 S flush-138:13 app_68 21635 93 151092 18456 ffffffff 00000000 S com.example.deadlock app_68 21636 21635 151092 18456 ffffffff 00000000 S HeapWorker app_68 21637 21635 151092 18456 ffffffff 00000000 S GC app_68 21638 21635 151092 18456 ffffffff 00000000 S Signal Catcher app_68 21639 21635 151092 18456 ffffffff 00000000 S JDWP app_68 21640 21635 151092 18456 ffffffff 00000000 S Compiler app_68 21641 21635 151092 18456 ffffffff 00000000 S Binder Thread # app_68 21642 21635 151092 18456 ffffffff 00000000 S Binder Thread # app_68 21643 21635 151092 18456 ffffffff 00000000 S Thread-10 app_68 21650 21635 151092 18456 ffffffff 00000000 S Thread-11 app_68 21652 21635 151092 18456 ffffffff 00000000 S Thread-12 […]
  • 7. !Ad Hardcore Software Diagnostics Training Sep - Nov, 2013 Mobile Software Diagnostics (FREE) Psychology of Software Diagnostics (FREE) Semiotics of Debugging (FREE) Generative Software Narratology (FREE) Software Diagnostics: Requirements, Architecture, Design, Implementation and Improvement (FREE) October 25-28, 2013 Accelerated Disassembly, Reconstruction and Reversing November 15-25, 2013 Accelerated Windows Memory Dump Analysis © 2013 Software Diagnostics Institute