Advanced C/C++ Debugging on Windows Workshop

All Tracks and Workshops : 1100 ILS + VAT
Modern C++ Workshop: 2300 ILS + VAT

Schedule: 1 day

Description
You will learn and practice how to debug Windows Native Applications written in C/C++ using
Visual Studio and WinDbg. This is intended as an overview and expose but will foucs on the
main tools and techniques in depth.
The workshop will include hands-on practice focusing on debugging cardinal problems using
the covered tools in the workshop.

Use standard and advanced Visual Studio debugging features to debug native
applications written in C/C++.

Use WinDbg to debug native applications.

Learn how to analyze and solve performance and deadlock issues.

Audience
Software engineers with hands-on experience using C/C++ in software development on the
Windows platform, site Reliability engineers and other technically related personnel.

Prerequisites

Experience with C/C++ programming.

Experience programming Windows native applications.

Experience using Visual Studio.

Familiarity with the WIN32 APIs

Familiarity with Windows operating systems concepts such as virtual memory, multithreading, and synchronizations.

Familiarity with computer architecture concepts such as CPU registers, cache and main memory

Syllabus

  1. Introduction to Debugging on Windows
    a. Visual Studio as source level debugger
    b. Types of bugs
  2. Advanced Visual Studio
    a. Static code analysis.
    b. Debugging symbols and symbols server configuration.
    c. Visual Studio built-in tools for debugging, tracing, and performance.
    d. Practicing native debugging commands and tools in VS.
  3. Debugging tools for Windows kit
    a. Getting and installing debugging tools for Windows
    b. Debuggers in the package.
    c. Application Verifier
    d. Other tools: Gflags, DumpCheck, LogViewer, UMDH and others.
  4. Windows Internals
    a. Windows Architecture
    b. Virtual Memory and address space
    c. Windows executables and DLLs loading and terminating process
    d. Processes and Threads
    e. SHE – Windows structured exception handling.
  5. Debugging with WinDbg
    a. Introduction to WinDbg.
    b. Configuring WinDbg for live user mode debugging.
    c. Using WinDbg to debug live processes.
    d. WinDbg basic commands.
    e. Calling conventions and parameter passing
  6. Assembly Language Fundamentals
    a. Why do you need basic knowledge of machine code?
    b. Basic Machine code instructions.
    c. Using WinDbg to disassemble code.
  7. Process Dump Analysis
    a. Configuring WinDbg for dump analysis.
    b. Using WinDbg to debug dumps.
    c. WinDbg Extensions.
  8. Sysinternals tools
    a. Tools included in the package.
    b. Using the tools without installation.
  9. Memory Management
    a. Heap Allocations.
    b. Analyzing Memory Leaks.
    c. Tools: Application Verifier, UMDH, VMMap
  10. Windows Performance Monitor
    a. Creating a baseline.
    b. Detecting anomalies.
    c. Counters to watch for specific debug scenarios.
    d. WPT – Windows Performance Toolkit
  11. Debugging techniques for specific Scenarios
    a. CPU Hang.
    b. Deadlocks.
    c. Exception Crash.
    d. Memory Leaks.
    e. Resource Leaks.
  • Date : June 19, 2024
  • Time : 09:00 - 15:00 (Asia/Jerusalem)
Conference Proposal (#3)

Registration Form for Sela Practice March 2025

 

This form will be filled out by the company representative approved to commit on behalf of the company for all matters


Choose the Tracks for the registering Attendees

If there are several participants on your behalf, you can add fields to register the respective participants by clicking on the plus sign


Confirmation of the company / Attendee committing to payment


+ VAT ( In ILS)
Conference Proposal (#3)

Registration Form for Sela Practice March 2025

 

This form will be filled out by the company representative approved to commit on behalf of the company for all matters


Choose the Tracks for the registering Attendees

If there are several participants on your behalf, you can add fields to register the respective participants by clicking on the plus sign


Confirmation of the company / Attendee committing to payment


+ VAT ( In ILS)