系统调用 openat 和 sys_enter_openat 有什么区别?
我看到 python BCC 实现 系统调用 __x64_sys_openat 用于附加 kprobe,但是在 libbpf 实现 kprobe 附加到 sys_enter_openat。似乎都捕获了 openat() …
如何检查是什么引起write()syscall吊死? Python子流程停止工作一段时间后工作
以下是 Python 脚本正常运行时 strace 结果的样子。主进程 (412) 及其子进程都按预期工作。然而,过了一段时间,也许 40-60 分钟后,子进程开始失败,…
无法将性能事件添加到具有现有领导者的组中
我正在尝试使用以下代码片段(例如)将 perf 事件添加到具有现有领导者的事件组中: struct perf_event_attr perf_event; int cpu_fd = -1; int proce…
为什么从字符串写入文件时会收到额外的字符?
我的程序使用 open,使用 write,然后关闭文件描述符。当我检查文件内容时,它在字符串后面有附加字符。 Visual Studio Code 将它们显示为“␀”(带…
如何在RISC-V Linux中添加系统调用?
关于如何向针对 x86 的 Linux 添加系统调用有详细的文档,例如有一个文件 /arch/x86/entry/syscalls/syscall_64.tbl。 我在/arch/riscv下搜索了目录en…
遍历 NASM x86 目录中的文件
我到处寻找类似的问题,但没有结果。 我正在尝试在 Ubuntu 中使用 NASM 来熟悉 x86 ASM。 我想编写一个仅针对具有 .txt 扩展名的文件的程序,因此我想…
在 Ubuntu 20.04 中实现自定义系统调用时出错
我主要遵循此教程,但出现错误。 这就是我所做的: cd linux-5.16.15 mkdir helloworld cd helloworld gedit helloworld.c #include asmlinkage long …
Sysdig - 获取由 k8 pod 触发的系统调用
我想捕获 k8 pod 中的所有系统调用。 Sysdig 支持 -k 标志来指定 kubernetes kubectl api 的 url。 我使用下面的 kubectl proxy 命令公开了 kubectl a…
汇编中的(进位标志)和系统调用(Mac OS 上的 x64 Intel 语法)之间有什么关系?
我是汇编语言的新手,我必须实现 在MAC中使用汇编语言x64读取函数。 到目前为止,这就是我所做的: ;;;;;;ft_read.s;;;;;; global _ft_read: section …
为什么在将代码直接编译为可执行文件而不是编译为目标文件然后手动链接时会得到额外的系统调用?
我想在 Ubuntu 上使用 GNU C 编译器编译此 C 代码,而不链接任何标准库,只执行以下代码。 static void exit(long long code) {asm inline ("movq $60…
为什么 Intel Pin 无法检测开放系统调用?
我正在尝试构建一个 pintool,它应该能够检测针对特定文件/目录的 open() 系统调用,并将文件路径参数替换为另一个值。 例如,下面是我想要检测的非常…
Golang:无法使用syscall.EpollCreate
我正在尝试将程序从 C 移植到 Go,因此需要使用 syscall 包中的大量内容。 我正在尝试使用 https://pkg.go.dev/syscall#EpollCreate,但是VSCode 拒绝…