Udemy – Garbage Collection Algorithms 2021-3

Udemy – Garbage Collection Algorithms 2021-3 Downloadly IRSpace

Udemy – Garbage Collection Algorithms 2021-3
Udemy – Garbage Collection Algorithms 2021-3

Garbage Collection Algorithms, Memory leaks and dangling pointers are the main issues of the manual memory management. You delete a parent node in a linked list, forgetting to delete all its children first — and your memory is leaking. You delete an object chain in correct order — but suddenly your program crashes since you forgot about second owner of this resource, which now tries to dereference a null-pointer. To avoid these issues, most of the modern high-level programming languages implement automatic memory management. You allocate objects manually, however don’t bother with their deallocation: a special program, garbage collector, knows how to automatically deallocate them correctly, and reclaim for future reuse. In the Essentials of Garbage Collectors class we study all different techniques and algorithms related to the automatic memory management, which are used today on practice.

In implementing your programming language, there is a very high chance you’ll need to implement a garbage collector. Even languages which initially were positioned as “memory-safe”, such as Rust, eventual implemented automatic reference counting (ARC) and other collectors. To reiterate: in most of the modern high-level programming languages, a garbage collector module (or multiple GC modules, like in Java) is pretty much a requirement today. If you are not a compiler engineer, then the class can still be interesting for you. Implementing a garbage collector or a memory manager in general, is a pretty advanced engineering task. It’s a simple trick: you take some complex project (such as a garbage collector, compiler, interpreter, etc), and while building it, you learn all different data structures and algorithms. And then come back to “every-day programming”, improved as a better engineer, with the transferable generic knowledge of complex systems.

What you’ll learn

  • Algorithms and data structures behind Automatic Memory Management in computer programs.
  • Memory management history: Static, Stack, Heap allocations
  • Virtual memory and Memory Layout
  • Tracing vs. Direct collectors
  • Semantic vs. Syntactic garbage
  • Mark-Sweep garbage collector
  • Mark-Compact collector
  • Reference counting collector
  • Copying collector
  • Generational collector
  • Parallel, Incremental, Concurrent collectors
  • Tri-color abstraction and marking
  • GC Barriers

Who this course is for

  • Compiler engineers
  • All curious engineers, willing to implement a complex project to learn different memory management algorithms (generic knowledge is transferable to other systems)

Specificatoin of Garbage Collection Algorithms

  • Publisher: Udemy
  • Teacher: Dmitry Soshnikov
  • Language: English
  • Level: Intermediate
  • Number of Course: 18
  • Duration: 2 hours and 32 minutes

Contents

Garbage Collection Algorithms

Requirements

  • Basic data structures and algorithms (trees, graphs, linked lists, etc)
  • Basic knowledge about computer memory (bytes, addresses, pointers)

Pictures

Sample Clip

Installation Guide

Extract the files and watch with your favorite player

Subtitle: English

Quality: 720p

Changes:

Version 2021/3 compared to 2020/10 has increased the number of 1 lesson and the duration of 19 minutes.

Download Links

Download Course – 469 MB

File size

469 MB