Signals
Signals are a form of inter-process communication. However they differ as the kernel is the one to execute a signal, and they are not quite avoidable.
More notable signals are like Sigkill where the process can be killed even though it is not a parent process. Signals are handled over syscalls
Example: Signal trampoline that is defined for each process.
BITS 64
global signalTrampolineStart
global signalTrampolineEnd
signalTrampolineStart:
mov rbp, rsp ; Set up stack frame
mov rax, qword [rbp]
call rax
mov rsp, rbp
mov rax, 105 ; Signal return syscall
int 0x69 ; Execute syscall
signalTrampolineEnd:
Last updated