android - 如何找出 strace 输出中的这些 syscall_983045、syscall_322 系统调用?

标签 android linux system-calls strace

我在 strace 日志中经常看到这两个系统调用。

找出这些系统调用的含义的最佳方法是什么?

我在 linux 内核源代码树中尝试了 include/linux/syscalls.h。但在那里找不到任何东西。

这个 android ics 系统。 Linux 3.0 代码。

[pid   144] syscall_322(0xa, 0x1ba3b, 0x24000, 0, 0x3, 0x2, 0xa, 0x142, 0x1b6d8, 0xa, 0x181a0, 0x181a0, 0, 0xbecfda98, 0x400dbbe5, 0x400cf4d4, 0x60000010, 0xa, 0xb691, 0, 0x7379732f, 0x2f6d6574, 0x2f62696c, 0x6462696c, 0x732e6d76, 0x6f73006f, 0x746e6569, 0x6f732e, 0x6f, 0x6f732e, 0x442000, 0x30303200 <unfinished ...>


[pid   169] syscall_983045(0xb001b878, 0xb001d0c4, 0xffffffc8, 0, 0, 0xb00094f0, 0xbefcac30, 0xf0005, 0xb001b878, 0, 0, 0, 0, 0xbefcabe0, 0xb00047c3, 0xb0001200, 0x10, 0xb001b878, 0xb691, 0, 0x6363612f, 0x69752f74, 0x30312f64, 0x742f3030, 0x736b7361, 0x3a746900, 0x746e6569, 0x6f732e, 0x6f, 0x6f732e, 0x442000, 0x30303200) = 0
[pid   170] close(9)                    = 0

最佳答案

找到它,以防其他人需要知道:

$ grep 983045 ./development/ndk/platforms/android-3/include/sys/linux-syscalls.h
#define __NR_ARM_set_tls                  (__NR_SYSCALL_BASE + 983045)
$ grep 322 ./development/ndk/platforms/android-3/include/sys/linux-syscalls.h
#define __NR_openat                       (__NR_SYSCALL_BASE + 322)

关于android - 如何找出 strace 输出中的这些 syscall_983045、syscall_322 系统调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8763074/

相关文章:

android - mmi代码错误代码android

java - 为 Android 应用程序绘制自定义标签栏

c - write 和 printf,哪个更快?

android - 检测与 WiFi 接入点的断开连接

android - 使用外键的sqlite查询

C 库与编译器一起分发还是直接由操作系统分发?

linux - 为每个服务器上的多个用户生成 ssh-key 文件

linux - 学习嵌入式固件黑客

linux-kernel - 如何知道我当前正在处理的系统调用的名称?

linux - 如何在二进制执行期间 Hook 所有 linux 系统调用