Linux kernel 内核x86_64中的syscall_表位于哪里?

Linux kernel 内核x86_64中的syscall_表位于哪里?,linux-kernel,system-calls,Linux Kernel,System Calls,我正在尝试向Linux内核(x86_64)添加新的系统调用。在此基础上解释了如何向内核(x86)添加系统调用。文章说我需要在一个名为syscall\u table\u 32.S的文件中定义我的系统调用名,该文件位于src/arch/x86/syscall\u table\u 32.S中 但是在我的例子中,内核源代码中没有名为syscall\u table\u 32.S或syscall\u table\u 64.S的文件!在src/arch/中甚至没有x64系统调用表的目录 那么,内核3.13.0

我正在尝试向Linux内核(x86_64)添加新的系统调用。在此基础上解释了如何向内核(x86)添加系统调用。文章说我需要在一个名为
syscall\u table\u 32.S
的文件中定义我的系统调用名,该文件位于
src/arch/x86/syscall\u table\u 32.S

但是在我的例子中,内核源代码中没有名为
syscall\u table\u 32.S
syscall\u table\u 64.S
的文件!在
src/arch/
中甚至没有x64系统调用表的目录

那么,内核3.13.0-14-generic(x86\u 64)中定义的
syscall\u table\u 64.S
在哪里?
在哪里可以定义新的系统调用?

3.3版及以后的版本与指南中使用的2.X不同。您应该在
arch/x86/
目录中查找
syscalls
目录。因此:

cd /kernel-src/arch/x86/syscalls/syscall_64.tbl
kernelsrc
是内核源所在的目录。一个好主意是读入SO,并将其与您的资源进行比较。

可能的副本