linux - Linux中的每个Shell命令是否都在后端调用系统调用

标签 linux shell unix operating-system system-calls

我被要求找到一个不进行任何系统调用的 shell 命令。我搜索了很多,最后在这里问,在 linux shell 或 unix 中是否有任何命令不在后端调用系统调用。

谢谢。

最佳答案

是与否

部分...

有许多 shell 内置程序可以处理 shell 的宏处理器编程语言的控制流或定义。

只有少数内置函数本质上需要进行任何系统调用;一般来说,它们只是改变 shell 内存镜像中的状态。

没有部分...

实际上,您甚至不能只在 shell 中键入 Enter 而不运行许多系统调用。 shell 可能会等待 (2) 以查看是否有任何子进程已终止,它可能会检查时间,它通常会打印一条提示……当然它会读取下一条命令。

关于linux - Linux中的每个Shell命令是否都在后端调用系统调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14464143/

相关文章:

c - 如何在c中获取另一个进程的pid?

php - 公开访问服务器的 phpSysInfo - 安全吗?

c - 如何在Linux中读取文件/文件夹属性?

linux - 有效地测试一个端口是否在 Linux 上打开?

linux - 如何为GNU find适本地限定-or运算符?如何找到指向可执行文件的符号链接(symbolic link)?

linux - 如何从Linux中的字符串中提取以用户定义的特殊字符开头和结尾的子字符串?

linux - Bash 脚本 Awk 条件

linux - 如何列出所有子目录的目录大小?

html - Unix Shell 中的 CSS 样式覆盖

unix - 查找给定范围内毕达哥拉斯三元组的数量