Section 1 : 1 Introduction
|
Lecture 1 | Motivation Operating Systems fundamentals- Part 1 | |
|
Lecture 2 | Operating Systems Fundamentals - Part 2 | 00:07:39 Duration |
Section 2 : 2 Threading fundamentals - Thread Creation
|
Lecture 1 | Tips about Coding Lectures and Debugging Instructions | |
|
Lecture 2 | Threads Creation - Part 1 Thread Capabilities Debugging | 00:07:14 Duration |
|
Lecture 3 | Threads Creation - Part 2 | 00:08:27 Duration |
|
Lecture 4 | Thread Creation - MultiExecutor Solution |
Section 3 : 3 Threading fundamentals - Thread Coordination
|
Lecture 1 | Thread Termination Daemon Threads | 00:07:18 Duration |
|
Lecture 2 | Joining Threads | 00:08:19 Duration |
|
Lecture 3 | Multithreaded Calculation - Solution |
Section 4 : 4 Performance Optimization
|
Lecture 1 | Introduction to Performance Optimizing for Latency - Part 1 | 00:09:36 Duration |
|
Lecture 2 | Optimizing for Latency Part 2 - Image Processing | 00:16:15 Duration |
|
Lecture 3 | Optimizing for Throughput Part 1 | 00:05:15 Duration |
|
Lecture 4 | Optimizing for Throughput Part 2 - HTTP server Jmeter | 00:12:26 Duration |
Section 5 : 5 Data Sharing between Threads
|
Lecture 1 | Stack Heap Memory Regions | 00:07:53 Duration |
|
Lecture 2 | Resource Sharing Introduction to Critical Sections | 00:11:07 Duration |
Section 6 : 6 The Concurrency Challenges Solutions
|
Lecture 1 | Critical Section Synchronization | 00:07:33 Duration |
|
Lecture 2 | Atomic Operations Volatile Metrics practical example | 00:10:19 Duration |
|
Lecture 3 | Min - Max Metrics - Solution | |
|
Lecture 4 | Race Conditions Data Races | 00:08:51 Duration |
|
Lecture 5 | Locking Strategies Deadlocks | 00:11:30 Duration |
Section 7 : 7 Advanced Locking
|
Lecture 1 | ReentrantLock Part 1 - tryLock and interruptible Lock | |
|
Lecture 2 | ReentrantLock Part 2 - User Interface Application example | 00:08:14 Duration |
|
Lecture 3 | Reentrant Read Write Lock Database Implementation | |
|
Lecture 4 | Product Reviews Service - Solution |
Section 8 : 8 Inter-Thread Communication
|
Lecture 1 | Semaphore - Scalable Producer Consumer implementation | 00:08:36 Duration |
|
Lecture 2 | Condition Variables - All purpose Inter-Thread Communication | 00:08:41 Duration |
|
Lecture 3 | Objects as Condition Variables - wait() notify() and notifyAll() |
Section 9 : 9 Lock-Free Algorithms Data-Structures Techniques
|
Lecture 1 | Introduction to Non-blocking Lock Free operations | 00:06:48 Duration |
|
Lecture 2 | Atomic Integers Lock Free E-Commerce | 00:05:17 Duration |
|
Lecture 3 | Atomic References Compare And Set Lock-Free High Performance Data Structure |
Section 10 : 10 Beyond Multithreading - Final Lecture
|
Lecture 1 | Distributed Systems Big Data Performance | 00:04:46 Duration |