破案,freebsd libc 中系统调用
lib/libc/sys/open.c open -> openat -> __libc_interposing[INTERPOS_openat] -> __sys_openat
然后 Makefile 里写的,列出了系统调用名字,每个名字会生成 name.S 编译成 name.o
生成的代码在右边
代码里头会
#include <SYS.h>
其中 PSEUDO 展开就是
__sys_openat 定义,将 sys/syscalls.h 中定义的 SYS_openat 数值送入 eax
KERNELCALL -> int 0x80h
实时pp显示
右上方有个白色的那玩意就是(笑)
https://www.bilibili.com/video/BV18K411H733
Global variables define regions of memory allocated at compilation time instead of run-time.
全局变量定义内存空间,于编译时而不是运行时分配。
https://releases.llvm.org/9.0.0/docs/LangRef.html#global-variables
莉特雅 literal
写代码业余爱好者 amateur coder