asynchronous notification using fasync : LDD with Raspberry Pi #21

Опубликовано: 11 Июнь 2026
на канале: MP Coding
209
13

In this video, we explore asynchronous notification using fasync in Linux device driver development with Raspberry Pi.

So far in the series, we covered blocking I/O, wait queues, and poll/select mechanisms,
where the process waits for data. In this video, we take it a step further and implement signal-driven I/O,
where the process continues running and gets notified via SIGIO signals when data is available.

We walk through:

How fasync works in the Linux kernel
Implementing .fasync in the driver
Using fasync_helper and managing the async queue
Sending signals from the kernel using kill_fasync
Writing a user-space application to handle SIGIO
Enabling async mode using fcntl
Understanding how true asynchronous I/O works without blocking

By the end of this video, you will clearly understand how to implement non-blocking, signal-based
communication between kernel space and user space.

GitHub : https://github.com/madhawapolkotuwa/l...

Let's Connect
======================
Buy me a Coffee : ☕https://buymeacoffee.com/madhawapolb
Patreon :   / madhawapolkotuwa  

#linux #kernel #devicedriver