К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Advanced Linux Kernel Programming: Concurrency and Sync · LearnSpace
Назад в каталог
courseraIT и технологии

Advanced Linux Kernel Programming: Concurrency and Sync

Курс от Packt
Продвинутый≈ 5.4 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

Gain advanced expertise in Linux kernel programming by mastering synchronization and concurrency techniques used in modern kernel development. This course explores critical mechanisms such as mutexes, spinlocks, atomic operations, and Read-Copy-Update (RCU), helping professionals build reliable and efficient multi-threaded kernel components. You will learn how to manage shared resources safely, prevent race conditions, and resolve synchronization challenges in kernel environments. Through detailed coverage of locking strategies and concurrency control, the course equips you with the practical skills needed to create robust, thread-safe kernel modules and debug complex synchronization issues effectively. Unlike introductory kernel programming courses, this training focuses on advanced synchronization concepts with a balance of theory and real-world implementation examples. Practical demonstrations and best practices ensure learners can confidently apply concurrency techniques in production-level Linux systems. This course is ideal for Linux developers, embedded systems engineers, kernel programmers, and systems professionals seeking deeper expertise in kernel concurrency and synchronization. Prior experience with C programming and foundational Linux kernel concepts is recommended. Packt is one of the world's most prolific publishers of cutting-edge technical content. For over two decades we've made it our mission to curate and publish the knowledge of only the very best technical experts. We focus on real-world courses that help our customers get the job done, with coverage that extends across a wide range of established and cutting-edge technical topics. If you're an individual or an organisation that embraces learning by doing, Packt is the perfect fit for you. This course is part three of a three-course Specialization designed to provide a comprehensive learning pathway in this subject area. While it delivers standalone value and practical skills, learners seeking a more integrated and in-depth progression may benefit from completing the full Specialization.

Навыки, которые вы освоите

Memory ManagementSystem ProgrammingLinux AdministrationSystem SoftwareEmbedded SoftwareMicroarchitectureHardware ArchitectureLinux CommandsData IntegrityLinuxData SharingDebuggingC (Programming Language)Linux ServersOS Process ManagementPerformance TuningOperating SystemsScalabilitySoftware Design

Программа курса

2 модулей · 52 учебных материалов

01Kernel Synchronization - Part 122 материалов

Mastering Concurrency: Locks, Critical Sections, and Interrupts in the Linux Kernel

OverviewВидеоIntroductionЧтениеA Classic Case The Global IЧтениеConcepts the lockЧтение

Учитесь у экспертов

Packt - Course Instructors

Преподаватель курса

Advanced Linux Kernel Programming: Concurrency and Sync
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 5.4 ч

2 модулей

Язык: Английский

Часть программы вашего университета
Critical Sections A Summary of Key PointsЧтение
Data Races A More Formal DefinitionЧтение
Concurrency Concerns Within the Linux KernelЧтение
Hardware Interrupts and Data RacesЧтение
Mutex or Spinlock? Which to Use WhenЧтение
Determining Which Lock to Use in PracticeЧтение
Mutex Lock and Unlock APIs and Their UsageЧтение
Mutex Locking Example DriverЧтение
The Mutex Lock A Few Remaining PointsЧтение
Priority Inversion and the RT-MutexЧтение
Using the SpinlockЧтение
Test Sleep in an Atomic ContextЧтение
Locking and InterruptsЧтение
Driver Method and Hardware Interrupt Handler Run Serialized SequentiallyЧтение
Some Interrupts Masked, Driver Method and Hardware Interrupt Handler Run InterleavedЧтение
Interrupt Handling on Linux A Summary of Key PointsЧтение
Using Spinlocks A Quick SummaryЧтение
Kernel Synchronization FundamentalsЗадание
02Kernel Synchronization - Part 230 материалов

Mastering Advanced Concurrency and Debugging in the Linux Kernel

OverviewВидеоIntroductionЧтениеThe Simpler Atomic_t and Refcount_t InterfacesЧтениеDeliberately Causing an Underflow or Overflow with Refcount VariablesЧтениеUsing the RMW Atomic OperatorsЧтениеUsing the RMW Bitwise OperatorsЧтениеEfficiently Searching a BitmaskЧтениеTrying Out the Learner-writer SpinlockЧтениеThe Reader-Writer SemaphoreЧтениеWhat Is the Cache Coherency ProblemЧтениеThe False Sharing IssueЧтениеFixing ItЧтениеAllocating, Initialization, and Freeing Per-CPU VariablesЧтениеPer-CPU An Example Kernel ModuleЧтениеPer-CPU Usage Within the KernelЧтениеRCU Level 1 ExplanationЧтениеRCU Level 3 ExplanationЧтениеTrying Out RCUЧтениеQuick Summary of the RCU Core APIsЧтениеTrying Out RCU A Simple List RCU Demo ModuleЧтениеRCU Detailed DocumentationЧтениеLock Debugging Within the KernelЧтениеLock Validator Lockdep Catching Locking Issues EarlyЧтениеCatching a Self Deadlock Bug with LockdepЧтениеFixing ItЧтениеCatching an AB-BA Deadlock with lockdepЧтениеRuntime Buggy Case Circular DeadlockЧтениеNote on lockdep Known IssuesЧтениеIntroducing Memory BarriersЧтениеKernel Synchronization ConceptsЗадание