Linux协议栈之系统调用
Linux TCP/IP协议栈对应于ISO七层参考模型分别为:
应用层-------------应用系统
表示层-------------BSD Socket层 socket.c
会话层-------------INET Socket层 af_inet.c
传输层-------------TCP/UDP tcp.c/udp.c
网络层-------------IP层 ip.c
链路层-------------设备接口层 dev.c
物理层-------------物理接口层
Linux通过int $0x80it调用进入sys_socketcall(int call,unsigned long *args),函数做为协议栈统一的接口。sys_socketcall()根据参数call跳转到相应不同的入口,完成TCP/IP 相应的功能。
Linux把系统调用号socketcall保存在寄存器eax中,把第一,第二个参数保存到ebx和ecx中。然后call *%eax调用sys_socketcall()。
相关推荐
wangqd 2020-11-09
wq0 2020-04-10
海豚的成长日记 2020-01-11
pointfish 2019-12-11
Tinkmaster 2019-10-23
Finallyyang 2011-09-18
qiaosym 2012-04-03
coutoperator 2019-08-16
jLawrencee 2011-08-02
加菲猫园 2011-07-05
nuligannima 2011-06-24
Attend 2011-06-17
benico 2011-06-14
zhangxiafll 2011-04-08
jiontang 2015-07-31
毕健 2009-12-18
xorxos 2019-06-28
石权 2019-06-26
dz00 2019-06-27