![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
文章平均质量分 65
ricardoleo
韬光养晦,厚积薄发。
展开
-
网络基础:网络编程套接字
IP地址我们再用Xshell的时候,在虚拟机终端下,输入ifconfig可以查看虚拟机IP地址。IP地址究竟是什么? IP协议有两个版本,IPv与IPv6,在一般情况下默认的都是IPv4。IP地址是在IP协议中,用来标识网络中不同主机的地址。对于IPv4来说,IP地址是一个四字节32位的整数。我平常看的IP地址都是用点分十进制的字符串表示的。而用点分割的每一段数字表示的范围在0~2...原创 2018-05-10 16:29:31 · 270 阅读 · 0 评论 -
网络基础:浅析UDP协议
UDP协议端格式 其中16为UDP长度表示为整个数据报(UDP报头信息+UDP数据)的最大长度,那么也就是说UDP发送的数据最大不能超过64K(包括UDP报头信息)由于64K在当今的互联网下是非常非常小的数字,所以当我们要传输的数据超过64K时,就需要在应用层手动的分包,多次发送,并且在接收端手动的拼装。其中UDP检验和是为了校验数据的对错的,如果错误,直接丢弃,并不会重传。UDP特点...原创 2018-05-11 15:51:14 · 438 阅读 · 0 评论 -
操作系统:浅析深度拷贝与浅拷贝
浅拷贝浅拷贝的实质相当于创建一个指针变量,然后让指针变量指向要拷贝的内容,相当于增加了一个映射关系,而并不是真正意义上的拷贝。如下图: 浅拷贝的优点在于拷贝的效率非常快,但是如果一旦改变内容,那么目标跟源都会被改变。这就会造成安全的问题产生。所以在某些时候不适用。深度拷贝深度拷贝就是在物理内存开辟空间,然后将源目标的数据拷贝至新的空间,最后利用指针指向这个新的空间。这样两个空间是...原创 2018-04-28 17:14:55 · 362 阅读 · 0 评论 -
基于TCP协议:实现简单的多线程多进程服务器
为什么要多线程多进程服务器?相比于UDP来说,由于UDP是不需要连接的,可直接通信。所以基于UDP协议的服务器,并不需要考虑到多客户端同时访问服务器时接受数据的问题。而TCP协议是需要连接的,在一个客户端连接上服务器后,这个时候服务器就开始于客户端进行消息的发送与接收。那么其它的客户端在这个时候是无法与服务器连接的。这个时候就需要考虑多线程或者多进程的服务器来应对这个问题了。基于TCP协议...原创 2018-05-16 15:41:24 · 513 阅读 · 0 评论 -
网络基础:ARP协议
ARP 协议ARP 协议是一个介于数据链路层与网络层之间的协议。其作用是建立了主机 IP 地址和 MAC地址的映射关系。在进行网络通讯的时候,源主机只能够知道目的主机的 IP 地址和端口号,却并不知道目的主机的 MAC 地址。而数据包是由网卡接收到,再去向上传输给上层协议处理的,如果接收的数据包的MAC地址与本机的不同,那么直接丢弃掉该数据包。所以在这之前,必须要知道目的主机的 MAC 地址,...原创 2018-06-11 15:21:11 · 487 阅读 · 0 评论 -
数据链路层之以太网协议
在 IP 数据包交付的过程中,在数据链路层会对数据包进行添加报头信息。以太网协议就是数据链路层的一个重要协议。这样说其实不太准确,因为以太网协议是一个规定数据链路层及物理层的协议,不能说它是数据链路层的一个协议。以太网帧以太网帧就是将网络层交付的数据添加报头信息后,此时的数据以帧的形式传递。以太网帧的格式如下:在这里,目的地址与源地址这里都指的是 MAC 地址。每一个主机对应唯...原创 2018-06-06 17:22:48 · 20169 阅读 · 0 评论