Detecting C/C++ Heap Issues In Xcode On Macos
Published 4/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.28 GB | Duration: 2h 46m
Published 4/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.28 GB | Duration: 2h 46m
Debug, detect & isolate memory related issues on macOS through Xcode & other standard tools
What you'll learn
Understand different kinds of problems associated with memory management
Effectively detect & isolate memory issues
Gain confidence in C/C++ memory management
Understand and use the facilities provided by Xcode for detecting memory issues
Use the standard memory debugging tools provided in macOS
Requirements
Fair knowledge of C & C++ is essential for this course
Not recommended for complete beginners to C++
Description
C++ is a large and complex language, but it gives programmers complete freedom when it comes to management of dynamic memory. This allows the programmers to allocate memory and manipulate it at runtime. That is why C++ is still a favorite language for high performance applications in various domains such as gaming, telecom, finance, aerospace, etc.However, it requires programmers to take great care while using dynamic memory, such as releasing acquired memory, taking care not to overstep memory boundary, etc. Otherwise, it could lead to problems such as dangling pointers, memory corruption, memory leaks, etc. This course will help you overcome all these problem by leveraging the tools provided on macOS platform. It has a rich set of functions provided by the C/C++ runtime heap library. These functions can help detect memory leaks, overflows, etc. You'll learn how to use these functions effectively and make your programs bug-free.In this course, you'll start with the basics of heap memory management and understand C & C++ allocation functions/operators in depth. You'll also learn how to effectively use them to avoid memory problems. Afterwards, you'll learn about the Xcode Malloc Debugging library functions and understand how to use them in your code. You'll also use the guarded memory allocator to effectively detect heap corruptions. You'll also gain knowledge of Xcode instruments, leaks command & more that can help you detect leaks.By the end of this course, you'll have a deep understanding of dynamic memory management. You'll be able to use standard tools effectively to detect & isolate memory problems. Note: This course is ONLY for macOS platform
Overview
Section 1: Introduction
Lecture 1 Course Introduction
Lecture 2 Slide Deck
Lecture 3 Xcode Installation & Basic Usage
Lecture 4 Debugging in Xcode Source Code
Lecture 5 Debugging in Xcode
Lecture 6 Memory Management Issues
Section 2: Detecting Buffer Overflows/Underflows
Lecture 7 Malloc Debugging - I
Lecture 8 Malloc Debugging - II Source Code
Lecture 9 Malloc Debugging - II
Lecture 10 Libgmalloc (Guard Malloc) Introduction
Lecture 11 Detecting Buffer Overflows - I
Lecture 12 Detecting Buffer Overflows Source Code
Lecture 13 Detecting Buffer Overflows - II
Lecture 14 Detecting Buffer Overflows - III
Lecture 15 Detecting Buffer Underflows
Lecture 16 Command Line Usage
Section 3: Detecting Leaks
Lecture 17 leaks Command Line Tool
Lecture 18 Using leaks Command Source Code
Lecture 19 Using leaks Command - I
Lecture 20 Using leaks Command - II
Lecture 21 Root Leak Source Code
Lecture 22 Root Leak
Lecture 23 Root Cycle
Lecture 24 Source Code
Lecture 25 leaks Command Line Options
Lecture 26 Memory Graph Root Leaks
Lecture 27 Memory Graph Root Cycles & Chained Pointers
Lecture 28 Memory Graph With leaks Command
Section 4: Instruments
Lecture 29 Debug Navigator Introduction
Lecture 30 Source Code
Lecture 31 Debug Navigator Usage
Lecture 32 Memory Window In Debug Navigator
Lecture 33 Introduction To Instruments
Lecture 34 Allocations Instrument - I
Lecture 35 Source code
Lecture 36 Allocations Instrument - II
Lecture 37 Allocations Instrument - III
Lecture 38 Allocations Instrument - IV
Lecture 39 Allocations Instrument - V
Lecture 40 Leaks Instrument.- I
Lecture 41 Leaks Instrument - II
Lecture 42 Leaks Instrument - III
Lecture 43 BONUS LECTURE
C/C++ programmers who wish to understand memory management in depth,C/C++ programmers who wish to understand memory management in depth,Programmers who use Xcode for C/C++ development