第5章 系统调用大部分介绍Unix内核的书籍都没有仔细说明系统调用,我认为这是一个失误。实际上,我们实际需要的系统调用现在已经十分完美。因此,从某种意义上来说,研究系统调用的实现是无意义的如果你想为Linux内核的改进贡献自己的力量,还有其它许多方面更值得投入精力。然而,对于我们来说,仔细研究少量系统调用是十分值得的。这样就有机会初步了解一些概念,这些概念将随本书发展而进行详细介绍,例如进程处理和内存。这使得你可以趁机详细了解一下Linux内核编程的特点。这包括一些和你过去在学校里(或工作中)所学的内容不同的方法。和其它编程任务相比,Linux内核编程的一个显著特点是它不断同三个成见进行斗争这三个成见就是速度、正确和清晰我们不可能同时获取这三个方面至少并不总是能够。什么是系统调用系统调用发生在用户进程(比如emacs)通过调用特殊函数(例如open)以请求内核提供服务的时候。在这里,用户进程被暂时挂起。内核检验用户请求,尝试执行,并把结果反馈给用户进程,接着用户进程重新启动,随后我们就将详细讨论这种机制。系统调用负责保护对内核所管理的资源的访问,系