看完这篇,你就能理解linux socket 的系统调用的流程

在linux系统中,用户态切换到内核态的方式有好几种,其中最常见的就是系统调用,用户态进入内核态的方法和cpu的架构有关,对于i386架构的cpu,当进程调用一个系统调用时,系统会产生int 0x80的软中断,通过产生的软中断用户态进入内核态,用户态进程将系统调用号传入内核,在内核中,有一个系统调用的总的入口,我们成为system_call函数,system_call函数会根据系统调用号作为索引,调用sys_call_table中的函数,这样最终的系统调用的函数就被执行了。

下图是套接口层,网络层,传输层的关系图:

看完这篇,你就能理解linux socket 的系统调用的流程

图1

以上就是socket的系统调用的一系列的流程,看完这个图,你就会明白系统调用的流程,下回再续,谢谢。


分享到:


相關文章: