如何在 Linux 上的程序集中找到程序进程 ID 号以自动终止程序?
How do I find the program process id number to kill program automatically in assembly on Linux?
通过这个,我可以找到程序的进程ID号:
ps -auwx | grep vlc | awk '{print}' | head -n 1
在汇编程序中,如何动态查找进程号?
section .text
global _start
_start:
mov rax,62 ; syscall for kill
mov rdi,5265 ; pid of vlc media player
mov rsi,9 ;signal
syscall
mov rax,60
mov rdi,0
syscall
这样做很乏味。您需要做的是遍历 /proc
文件系统,读取每个进程的 cmdline
文件以确定您感兴趣的进程。您可能还需要实现某种字符串匹配程序,因此您可以匹配 /usr/bin/vlc
以及 vlc
.
有关文档,请参阅 proc(5)。
通过这个,我可以找到程序的进程ID号:
ps -auwx | grep vlc | awk '{print}' | head -n 1
在汇编程序中,如何动态查找进程号?
section .text
global _start
_start:
mov rax,62 ; syscall for kill
mov rdi,5265 ; pid of vlc media player
mov rsi,9 ;signal
syscall
mov rax,60
mov rdi,0
syscall
这样做很乏味。您需要做的是遍历 /proc
文件系统,读取每个进程的 cmdline
文件以确定您感兴趣的进程。您可能还需要实现某种字符串匹配程序,因此您可以匹配 /usr/bin/vlc
以及 vlc
.
有关文档,请参阅 proc(5)。