📄 syscall.c
字号:
#include <linux/unistd.h>#include <stdlib.h>#include <sys/types.h>#include <errno.h>_syscall2(int,getmm,pid_t,pid,unsigned long*,arr)void Usage();int main(int argc,char *argv[]){ int ret=0; pid_t pid; static unsigned long array[15]; if (argc!=2) { Usage(); goto out; } pid=(pid_t)atoi(argv[1]); ret=getmm(pid,array); if (ret==-1) { printf("syscall:Invalid pid or syscall error\n"); goto out; } printf("pid %d memory map:\n",pid); printf("start_code:\t%x\n",array[0]); printf("end_code:\t%x\n",array[1]); printf("start_data:\t%x\n",array[2]); printf("end_data:\t%x\n",array[3]); printf("start_brk:\t%x\n",array[4]); printf("brk:\t\t%x\n",array[5]); printf("start_stack:\t%x\n",array[6]); printf("arg_start:\t%x\n",array[7]); printf("arg_end:\t%x\n",array[8]); printf("env_start:\t%x\n",array[9]); printf("env_end:\t%x\n",array[10]);out: return ret;}void Usage(){ printf("Usage: ./syscall [pid]\n");}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -