Вы нуждаетесь syscall(SYS_tkill, ThePid, TheSignal)
.
Пример:
#include <unistd.h>
#include <sys/syscall.h>
#include <signal.h>
int main()
{
//kills self:
pid_t tid = syscall(SYS_gettid);
syscall(SYS_tkill,tid,SIGTERM);
return 0;
}
Glibc придерживается политики не включать оболочки для системных вызовов, не относящихся к POSIX.Они могут изменять его в текущих / будущих версиях, но использование общей функции syscall
syscall-make всегда должно работать в Linux.