TCP/IP详解:TCP事务协议与UNIX域协议实现分析
需积分: 9 145 浏览量
更新于2024-09-09
收藏 1.62MB PDF 举报
"TCP-IP详解卷三:TCP事务协议,HTTP,NNTP和UNIX域协议"
在TCP/IP详解卷三中,重点讲述了TCP事务协议、HTTP超文本传输协议、NNTP网络新闻传输协议以及UNIX域协议。其中,UNIX域协议是针对同一主机内进程间通信的一种高效且低级的通信方式。
17.1 概述
UNIX域协议,也称为本地套接字或SOCK_STREAM类型的套接字,主要在同一个操作系统内的进程之间提供通信。其源代码实现主要集中在`ipc_usrrreq.c`文件中,包括约1000行C语言代码,相比UDP的800行和TCP的4500行更简洁。
17.2 代码介绍
实现UNIX域协议的源代码分布在多个文件中,如`sys/un.h`定义了`sockaddr_un`结构,`sys/unpcb.h`定义了`unpcb`结构,而`kern/ipc_proto.c`包含了`unix_domain`和`unix_protosw`的定义,以及`kern/ipc_usrrreq.c`中实现了UNIX域函数。此外,`kern/ipc_syscalls.c`包含了`pipe`和`socketpair`这两个系统调用,它们都依赖于本章描述的UNIX域函数。
关键全局变量:
- `unix_domain`: 表示UNIX域的域定义结构。
- `unix_sw`: 定义了UNIX域协议的协议结构。
- `sun_noname`: 包含空路径名的套接字地址结构。
- `unp_deferint`: 用于无用单元收集的计数器。
- `unp_gcingingint`: 如果正在执行无用单元收集,会被设置。
- `unp_inoino_int`: 下一个分配的伪ino_node号的值。
- `unp_rightsint`: 当前传输中的文件描述符数量。
本章和下章将详细讨论这些全局变量以及它们在进程间通信中的作用,同时涵盖了`pipe`和`socketpair`系统调用的实现,这两个调用允许创建连接的管道或套接字对,是UNIX域协议的重要组成部分。
TCP/IP详解卷三深入剖析了UNIX域协议的实现细节,包括其源代码结构、关键数据结构和系统调用的使用,这对于理解操作系统内核中的进程间通信机制具有极高的价值。通过阅读和理解这部分内容,开发者可以更好地掌握本地通信机制,并将其应用到实际的系统设计和编程中。
2009-04-06 上传
2010-05-23 上传
2013-02-28 上传
2017-04-28 上传
2010-12-04 上传
2010-05-17 上传
2011-05-17 上传
2024-11-15 上传
2024-11-15 上传
2024-11-15 上传
qq_39972070
- 粉丝: 0
- 资源: 1
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常