unix - linux - 系统调用和系统程序

我有一些疑问, 系统调用和系统程序之间有什么区别??

时间:

系统调用看起来像一个从程序调用的函数,系统调用的例子包括:

系统实用工具是一个完整的程序,你可以从shell提示符执行,在shell脚本中或者通过C(它又使用了其他系统调用fork()和execv())中的system()函数 。

命令的例子(系统实用工具)包括:

因此,系统调用在程序中使用; 系统实用工具是程序。

系统程序是可执行文件,系统调用是与操作系统功能交互的C函数,可以编译成系统程序。

例如,'ls'和'/bin/hostname'是可执行的系统程序:


sh-3.2$ ls -l /bin/hostname


-rwxr-xr-x 1 root wheel 14304 Jul 14 11:03 /bin/hostname


sh-3.2$ /bin/hostname


mycomputer



系统调用是将在用户和内核之间调用的函数,但是,系统程序是可以执行的程序: 更改系统设置,获得注册,访问内存,访问磁盘等。

...