stub.s
来自「linux 内核源代码」· S 代码 · 共 53 行
S
53 行
#include "uml-config.h"#include "as-layout.h" .globl syscall_stub.section .__syscall_stub, "x" .globl batch_syscall_stubbatch_syscall_stub: /* load pointer to first operation */ mov $(ASM_STUB_DATA+8), %espagain: /* load length of additional data */ mov 0x0(%esp), %eax /* if(length == 0) : end of list */ /* write possible 0 to header */ mov %eax, ASM_STUB_DATA+4 cmpl $0, %eax jz done /* save current pointer */ mov %esp, ASM_STUB_DATA+4 /* skip additional data */ add %eax, %esp /* load syscall-# */ pop %eax /* load syscall params */ pop %ebx pop %ecx pop %edx pop %esi pop %edi pop %ebp /* execute syscall */ int $0x80 /* check return value */ pop %ebx cmp %ebx, %eax je againdone: /* save return value */ mov %eax, ASM_STUB_DATA /* stop */ int3
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?