A 2 part challenge question. Say you need to inspect an application but you don't have symbols, how can you tell if the application is single threaded or multi-threaded? Say the app is multi-threaded, how can you find out what task a particular thread is executing and which thread has the highest CPU usage?
(bright music)…- [Instructor] To test our new-found knowledge,…here's a two part challenge.…You are given an ETL trace file for an application…that you did not write yourself.…You do not have access to the source code,…and you do not have access to the symbols.…You can only obtain the symbols you get…from the Microsoft server.…How do you tell if the application…is single or multithreaded?…Part two, say the application is multithreaded,…how can you find out which threads have the highest…CPU usage, and, more importantly, how do you find out…what a particular thread is executing?…Think about the answers and take a look at the traces…inside WPA if you need to before looking at the solution.…
- Looking at single-threaded source code
- Collecting CPU data
- Call-stack walking
- Inspecting thread activity
- Transforming a single-threaded app into a multithreaded app