系统调用

系统调用是 程序操作系统 发出的请求。它允许 应用程序 访问操作系统 API 中的 函数 和命令。

系统调用执行系统级操作,例如与 硬件 设备通信,以及读取和写入 文件。通过进行系统调用,开发人员可以使用操作系统(OS)支持的预先编写好的函数,而不必从头编写这些函数。这可以简化开发、提高应用的稳定性,并使应用更容易在不同版本的 OS 之间“移植”。

系统调用的工作方式

应用程序在一块称为 用户空间内存 区域中运行。系统调用会访问在内核空间中运行的操作系统 内核。应用程序进行系统调用时,必须先向内核请求许可。这可以通过 中断请求 完成,中断请求会暂停当前的 进程,并将控制权转交给内核。

如果请求获准,内核就会处理该请求,例如创建或删除文件。操作完成后,内核会将 输出 传回应用程序,应用程序再将 数据 从内存中的内核空间传输到用户空间。应用程序会将内核的输出接收为 输入。在程序的 源代码 中,这可能是函数中的 参数 值或返回值。收到输入后,应用程序会恢复进程。

基本的系统调用(例如获取系统日期和时间)可能只需几纳秒。更复杂的系统调用例如与 (网络 设备建立通信)可能需要几秒钟。为了防止出现瓶颈,大多数操作系统会为每个系统调用启动一个单独的内核 线程。现代操作系统支持 多线程,这意味着它们可以同时处理多个系统调用。

更新日期 April 27, 2019 作者 Per C.

quiz测试你的知识

Data used to boot a computer is located in a storage area called what?

A
Boot frame
0%
B
Boot box
0%
C
Boot sector
0%
D
Boot turbine
0%
Correct! Incorrect!     View the Boot Sector definition.
More Quizzes →

Tech Terms 计算机词典

本页中系统调用的定义是由 TechTerms.com 的作者撰写的原创定义。如果您想引用本页或引用此定义,请使用定义正下方的绿色引用栏。

我们的目标是以简单易懂的方式解释计算机术语。我们努力使发布的每个定义都做到准确和简明。如果您对本定义有任何反馈,或想建议一个新的技术术语,请联系我们

Tech Terms 通讯

通过我们的每日或每周通讯提升您的技术知识!立即订阅,即可将新术语和测验发送到您的收件箱。

订阅免费的 TechTerms 通讯

您希望多久收到一封电子邮件?

您可以随时使用每封邮件中的链接取消订阅或更改接收频率。 有疑问?请联系我们

注意:通讯以英文发送。