A quick introduction to one of the interprocess communication mechanisms in linux.
00:00 Main idea. We want to execute a function when external signal arrives
00:50 While loop. We can’t simply jump to the signal handler!
01:24 Interrupts. Breaking a natural instruction flow
02:30 Saving registers. Kernel preserves user register values
03:09 How pc is saved
04:03 The most important idea! Replacing the pc
04:40 Big Picture overview.
05:55 To the Source code!
07:16 Kernel entry. Disassembling my kernel binary
12:04 Replacing the program counter
12:35 Return to user.
13:28 Signal handler is finished. How to resume the main code?
14:14 How the stack works when enter the kernel
16:26 We need to keep main code’s original registers!
16:49 Kernel stack has to be empty. Overflow. Nested signals
17:30 Saving original regs to user stack
18:48 Kernel trampoline. Sigreturn
20:45 Bonus! (about the compiler bug video)
0 views
531
183
4 days ago 00:27:48 0
Вознесение уже было объявлено – и почти никто этого не заметил!
7 days ago 01:22:44 2
Звукорежиссёр объяснил – почему и как звучит Винил? | Евгений Виноградов – ДАЙ Records
1 week ago 00:05:16 2
💰 ДЕНЬГИ придут БЫСТРО, попробуйте сами!
1 week ago 00:06:27 2
ЛУЧШИЙ БОТ С СИГНАЛАМИ ДЛЯ ЛАКИ ДЖЕТ, ЛАКИ ДЖЕТ БОТ, LUCKY JET SIGNALS
2 weeks ago 00:08:22 3
✅ СИГНАЛЫ MINES 1WIN | ЭТО ЛУЧШАЯ СТРАТЕГИЯ В МИНЫ 1ВИН | НОВАЯ ТАКТИКА В 1WIN MINES
2 weeks ago 00:20:37 0
Горбачев. Зачем понадобился? Плохой сигнал
2 weeks ago 00:16:53 3
40 лет шейного остеохондроза исчезнут благодаря этой мышце