
函数说明
NAME
syscall - indirect system call
SYNOPSIS
#define _GNU_SOURCE /* See feature_test_macros(7) */
#include <unistd.h>
#include <sys/syscall.h> /* For SYS_xxx definitions */
long syscall(long number, ...);
DESCRIPTION
syscall() is a small library function that invokes the system call whose assembly language inter‐
face has the specified number with the specified arguments. Employing syscall() is useful, for
example, when invoking a system call that has no wrapper function in the C library.
syscall() saves CPU registers before making the system call, restores the registers upon return
from the system call, and stores any error code returned by the system call in errno(3) if an error
occurs.
Symbolic constants for system call numbers can be found in the header file <sys/syscall.h>.
syscall即是直接调用系统调用的实例。
参数说明:
- number是系统调用号,可以在<sys/syscall.h>查找
- …是接上该系统调用的所有参数.
参考
https://blog.csdn.net/wdsjy1234/article/details/47105591/
https://www.cnblogs.com/jiangzhaowei/p/4192290.html

本文详细介绍了系统调用syscall的功能和使用方法,解释了如何通过指定的系统调用号和参数来直接调用系统底层功能,这对于理解操作系统内部机制及进行底层编程具有重要意义。

2784

被折叠的 条评论
为什么被折叠?



