Can't access the open /arch/x86/syscalls/sysca

2019-05-14 20:42发布

As i'm writing this command after i shift to the kernel. When i compile it, it wasn't showing any list.Is there any other command to open the list ?

open /arch/x86/syscalls/syscall_32.tbl 

1条回答
Juvenile、少年°
2楼-- · 2019-05-14 21:26

Bug

Remove first / character from your file path (as it should be relative path).

Check file

Now, check that this file exists, using file tool:

$ file arch/x86/syscalls/syscall_32.tbl

Print file

If file exists, you can print it using cat or less commands. E.g.:

$ less arch/x86/syscalls/syscall_32.tbl

You can also open this file in editor, e.g. using vi command.

If file absent

This file comes with Linux kernel sources. It was added by this commit, in kernel 3.3. So you should use kernel version 3.3 or above to have this file.

How to download kernel with syscall_32.tbl file

Download vanilla mainline kernel sources from kernel.org via Git (using instructions from here):

$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
$ cd linux/

Now you should figure out which version to use. It depends on your task (how you are planning to use this kernel further). If it's intended for using on PC Linux distribution, I'd say pick nearest version to your distribution kernel:

$ uname -a

You can see all versions available by issuing next Git command:

$ git tag

Now you can switch to version you have chosen (in output from command above). E.g. you can switch to v3.3 like that:

$ git checkout v3.3

Switch to version 3.3 or above and your kernel sources will have arch/x86/syscalls/syscall_32.tbl file:

$ less arch/x86/syscalls/syscall_32.tbl
查看更多
登录 后发表回答