Socket调用

应用程序调用socket()函数后进入系统调用。Linux内核提供的唯一的socket系统调用函数是asmlinkage long sys_socketcall(int call, unsigned long * args),该函数在net/socket.c中定义。

socket中最重要的结构是socket结构体,该结构体定义include/linux/net.h中。

struct socket{

...

struct proto_ops *ops;

...

struct sock sk;

...

}

proto结构体代表了从socket层到传输层的接口


对于send、sendto、sendmsg最后都是调用sock_sendmsg()来发送的。recv、recvfrom、recvmsg是调用sock_recvmsg接收的。

ioctrl是文件系统的一个系统调用,sock_ioctrl是套接字接口文件系统的ioctrl接口的实现。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值