【发布时间】:2019-03-16 11:02:49
【问题描述】:
系统调用被添加到 syscall_32.tbl 或 syscall_64.tbl 但它是如何被解析的。我在用 C 编程时从未遇到过 .tbl 扩展名。
【问题讨论】:
标签: linux linux-kernel embedded-linux system-calls
系统调用被添加到 syscall_32.tbl 或 syscall_64.tbl 但它是如何被解析的。我在用 C 编程时从未遇到过 .tbl 扩展名。
【问题讨论】:
标签: linux linux-kernel embedded-linux system-calls
假设您询问的是位于 arch/x86/entry/syscalls 的与 x86 相关的文件,它们只是传递给同一目录中的 shell 脚本 syscallhdr.sh 和 syscalltbl.sh,从而在内核构建树上生成 C 头文件
arch/x86/include/generated/uapi/asm/unistd_32.h
arch/x86/include/generated/uapi/asm/unistd_x32.h
arch/x86/include/generated/uapi/asm/unistd_64.h
和
arch/x86/include/generated/asm/syscalls_32.h
arch/x86/include/generated/asm/syscalls_x32.h
arch/x86/include/generated/asm/syscalls_64.h
分别。这些标头稍后会被适当的 C 文件包含/使用。
PS:一般情况下,您可以在Makefile's 上查找此类内容。
【讨论】: