当前位置:首页 科普知识 Linux内核系统调用

Linux内核系统调用

发布时间:2023-09-08 20:31:05

Linux内核系统调用是指所有的操作系统在其内核里都有一些内建的函数,这些函数可以用来完成一些系统级别的功能。Linux系统使用的这样的函数。

Linux内核系统调用详细介绍

Linux内核系统调用是指所有的操作系统在其内核里都有一些内建的函数,这些函数可以用来完成一些系统级别的功能。Linux系统使用的这样的函数。

Linux内核系统调用基础信息

Linux内核系统调用(systemcall)

所有的操作系统在其内核里都有一些内建的函数,这些函数可以用来完成一些系统级别的功能。Linux系统使用的这样的函数叫做“系统调用”,英文是systemcall。这些函数代表了从用户空间到内核空间的一种转换,例如在用户空间调用open函数,则会在内核空间调用sys_open。一个已经安装的系统的支持的所有的系统调用可以在/usr/include/bits/syscall.h文件里面看到。

Linux内核系统调用开头命令

下面是我系统的该文件的开头几行:

$ head /usr/include/bits/syscall.h

#ifndef _SYSCALL_H

# error "Never use directly; include instead."

#endif

#define SYS_stime __NR_stime

#define SYS_getresuid __NR_getresuid

#define SYS_rt_sigqueueinfo __NR_rt_sigqueueinfo

#define SYS_mmap2 __NR_mmap2

每个系统调用都有一个定义好的数字,这些数字是用来构造这些系统调用的。内核通过0x80中断来管理这些系统调用。这些系统调用的对应的数字和一些参数都在调用的时候送到某些寄存器里面。

系统调用的数字实际上是一个序列号,表示其在系统的一个数组sys_call_table中的位置。

温馨提示:
本文【Linux内核系统调用】由作者 百科科普 转载提供。 该文观点仅代表作者本人, 自学教育网 信息发布平台,仅提供信息存储空间服务, 若存在侵权问题,请及时联系管理员或作者进行删除。
(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6