Linux und Open Source
Quick search
Navigation
Schulungen
Kursangebot
Unterlagen & Download
Topics
Python Programming: From Absolute Beginner to Advanced Productivity
The C Programming Language
C++: TODO List
C++: Miscellaneous Live-Hacking
C++
The New C++ (11-…)
Design Patterns With C++
C++ Code
C++ Exercises
CMake
Linux
Is Software A Craft? Software Is A Craft! ⟶
Clean Code
Unit Testing With
googletest
Linux Kernel Driver Development
Modern Character Devices
File Operations on Character Devices
Coding: First Functionality
Character Device Basics
Coding: Multiple Devices
Coding: Refactoring
DMA
Fedora: Building the Kernel
Fedora: Building External Kernel Modules
Module Loading, Hello World
Coding: Raspi GPIO Interrupts
Interrupts
IO Memory
Dynamic Memory:
kmalloc()
Dynamic Memory:
kmalloc()
(Slideshow)
Doubly Linked Lists
Coding: Fix Race Condition (Mutex)
Mutex (and RT Mutex)
Network Devices
PCI
Process vs.Atomic Context
Raspberry Pi: Building the Kernel
Coding: Fix
Sleep While Atomic
Spinlock (vs. Mutex)
dup()
,
fork()
, and Reference Counting (Stub)
Coding: Timed Event
Timer Management
Accessing Userspace Memory
Waiting for Something
Workqueue
Sample Code Maintenance
To Do List
Generated Topic Graph
Organisatorisches
Datenschutz
Bisher Gehaltene
About
Über Mich
About This Site
Blog
Posts
Dynamic Memory:
kmalloc()
¶
Dynamic Memory:
kmalloc()
(Slideshow)
cluster_linux
Linux
cluster_linux_kernel
Linux Kernel Driver Development
linux_kernel_process_vs_atomic
Process vs.Atomic Context