系统调用
系统调用是操作系统对上提供服务的接口,它是在怎么实现的。然后我们在这里会说,通过函数调用也可以通过系统调用,这两者当中有什么区别,他们在实现的时候开销是什么样子的。
我们的应用程序需要操作系统提供服务,而这些服务不能由应用程序直接执行,而必须要由我们的操作系统来执行。这些过程就需要一些接口,这些接口称为系统调用接口,有了这些系统调用接口就可以让操作系统为我们的应用程序提供服务。
标准c库的例子:
应用程序调用printf(),会触发操作系统的系统调用接口write()。
write的系统调用,它的实现是在内核里的根据你write里头参数不同,会把你print输出的文件可能输出到屏幕。
我在这选择不同的系统调用编号
系统调用:
系统调用(system call)提供操作系统服务接口。
这些调用通常以 C 或 C++ 编写,当然,对某些底层任务(如需直接访问硬件的任务),可能应以汇编语言指令编写。
应用程序访问通常是通过高层次的api接口而不是直接进行系统调用。