1.socket概念及两种系统下socket的对比

本文介绍了socket的基本概念及其在Web服务器和浏览器中的应用。在Unix/Linux系统中,socket被视为文件,通过文件描述符进行操作。而在Windows系统中,socket被看作网络连接,使用特定的文件句柄进行数据传输。
摘要由CSDN通过智能技术生成

1.socket概念及典型应用

socket 的原意是“插座”,在计算机通信领域,socket 被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过 socket 这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。

socket 的典型应用就是 Web 服务器和浏览器:浏览器获取用户输入的 URL,向服务器发起请求,服务器分析接收到的 URL,将对应的网页内容返回给浏览器,浏览器再经过解析和渲染,就将文字、图片、视频等元素呈现给用户。

2.两种系统下的socket

  • Unix/Linux下的socket是什么

Unix/Linux中的一切都是文件,为了统一对各种硬件的操作,简化接口,不同的硬件设备也都被看成一个文件。对这些文件的操作,等同于对磁盘上普通文件的操作。

为了表示和区分已经打开的文件,Uinx/Linux会给每个文件分配一个ID,这个ID就是一个整数,被称为文件描述符。一个文件描述符只是一个和打开的文件相关联的整数。Unix/Linux程序在执行任何形式的I/O操作时,都是在读取或者写入一个文件描述符。网络连接也是一个文件,它也有文件描述符。

我们可以通过 socket() 函数来创建一个网络连接,或者说打开一个网络文件,socket() 的返回值就是文件描述符。有了文件描述符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值