加入收藏 | 设为首页 | 会员中心 | 我要投稿 衡阳站长网 (https://www.0734zz.cn/)- 数据集成、设备管理、备份、数据加密、智能搜索!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux内核--网络栈实现分析(一)--网络栈初始化--转

发布时间:2021-01-23 23:32:46 所属栏目:Linux 来源:网络整理
导读:转载地址? 作者:闫明 ?本文分析基于内核Linux Kernel 1.2.13 以后的系列博文将深入分析Linux内核的网络栈实现原理,这里看到曹桂平博士的分析后,也决定选择Linux内核1.2.13版本进行分析。 原因如下: 1.功能和网络栈层次已经非常清晰 2.该版本与其后续版

<div class="dp-highlighter bg_cpp">
<div class="bar">
<div class="tools">
[cpp]?<a class="ViewSource" title="view plain" href="http://blog.csdn.net/geekcome/article/details/7488828"&gt;view plain<a class="CopyToClipboard" title="copy" href="http://blog.csdn.net/geekcome/article/details/7488828"&gt;copy

?
  1. ?????family;??
  2. ?????(*create)???(?socket?*sock,??protocol);??
  3. ?????(*release)??(?socket?*sock,??socket?*peer);??
  4. ??????????????sockaddr_len);??
  5. ??????????????sockaddr_len,??flags);??
  6. ?????(*accept)???(?socket?*sock,??socket?*newsock,??
  7. ?????(*getname)??(?socket?*sock,??sockaddr?*uaddr,??
  8. ?????(*read)?????(?socket?*sock,??*ubuf,??size,??
  9. ?????(*write)????(?socket?*sock,??
  10. ?????(*select)???(?socket?*sock,??sel_type,??
  11. ?????(*ioctl)????(?socket?*sock,?unsigned??cmd,??
  12. ?????(*listen)???(?socket?*sock,??len);??
  13. ?????????????unsigned?flags);??
  14. ?????????????unsigned?flags);??
  15. ?????????????unsigned?flags,??sockaddr?*,??addr_len);??
  16. ?????(*setsockopt)???(?socket?*sock,??level,??optname,??
  17. ?????(*getsockopt)???(?socket?*sock,??*optlen);??
  18. ?????(*fcntl)????(?socket?*sock,??
  19. };??

可以看到,这里实际上就是一系列操作的函数,有点类似于文件系统中的file_operations。通过参数传递socket完成操作。

接下来是proto_init()协议初始化。

(编辑:衡阳站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读