Socket描述符
来源:互联网 发布:淘宝卖的龙瞎是真的吗 编辑:程序博客网 时间:2024/05/29 11:19
Socket描述符
1.说明:
因为套接字API最初是作为UNIX操作系统的一部分而开发的,所以套接字API与系统的其他I/O设备集成在一起。特别是,当应用程序要为因特网通信而创建一个套接字(socket)时,操作系统就返回一个小整数作为描述符(descriptor)来标识这个套接字。然后,应用程序以该描述符作为传递参数,通过调用函数来完成某种操作(例如通过网络传送数据或接收输入的数据)。
要点 当应用程序要创建一个套接字时,操作系统就返回一个 小整数 作为描述符,应用程序则使用这个描述符来引用该套接字。
2.解释:
int socket(int domain, int type, int protocol);
domain
:指明所使用的协议族,通常为PF_INET,表示互联网协议族(TCP/IP协议族);
type
参数指定socket的类型:SOCK_STREAM 或SOCK_DGRAM,Socket接口还定义了原始Socket(SOCK_RAW),允许程序使用低层协议;
protocol
通常赋值”0”,表示默认协议。Socket()调用返回一个整型socket描述符,你可以在后面的调用使用它。
Socket描述符是一个指向内部数据结构的指针,它指向描述符表入口。
调用Socket函数时,socket执行体将建立一个Socket,实际上 “建立一个Socket” 意味着为一个Socket数据结构分配存储空间。 Socket执行体为你管理描述符表。两个网络程序之间的一个网络连接包括五种信息:通信协议、本地协议地址、本地主机端口、远端主机地址和远端协议端口。
该函数如果调用成功就返回新创建的套接字的描述符,如果失败就返回
INVALID_SOCKET
。套接字描述符是一个整数类型的值。每个进程的进程空间里都有一个套接字描述符表,该表中存放着套接字描述符和套接字数据结构的对应关系。该表中有一个字段存放新创建的套接字的描述符,另一个字段存放套接字数据结构的地址,因此根据套接字描述符就可以找到其对应的套接字数据结构。
每个进程在自己的进程空间里都有一个套接字描述符表但是套接字数据结构都是在操作系统的内核缓冲里。
3.参考:
- 转载链接: http://www.cnblogs.com/davidzhou11225/archive/2012/05/03/2480347.html
- socket文件描述符
- socket文件描述符
- socket文件描述符
- socket 描述符(经典)
- socket 文件描述符
- socket文件描述符
- Socket描述符选项
- socket描述符
- Socket描述符
- Socket描述符解释
- socket文件描述符
- socket描述符选项[SOL_SOCKET]
- Socket描述符选项[SOL_SOCKET]
- Socket描述符选项[SOL_SOCKET]
- socket描述符选项[SOL_SOCKET]
- socket描述符选项[SOL_SOCKET]
- Socket描述符选项[SOL_SOCKET]
- socket与文件描述符
- Java中的值传递和“引用传递”
- 【机器学习】【数据处理】numpy.random.RandomState函数用法
- P2911 [USACO08OCT]牛骨头Bovine Bones(c++)
- 2016 年 7 个顶级 JavaScript 框架
- Linux中CodeBlocks运行程序无法启动终端的原因及解决办法
- Socket描述符
- 各种对抗神经网络(GAN)大合集
- python学习心得(3)— 小米应用商店APK爬取
- 跟任何人都聊得来
- 精选30道Java笔试题解答
- 运用windows shell修复Wannacry漏洞
- Entity Framework-Code First to a New Database
- Intel汇编语言指令小结
- 关于window安装github失败