- 博客(8)
- 收藏
- 关注
原创 socket编程之select,poll,epoll
>select:函数 int select(int nfds,fd_set* readfds,fd_set* writefds,fd_set* exceptfds,struct timeval* timeout) nfds就是文件描述符集中最大的文件描述符加一 readfds,writefds,exceptefds为三个文件描述符集,是输入输出型参数,fd_set是个位数组,其大
2016-07-31 13:53:42 528
原创 计算机网络socket编程之UDP
>UDP是一种不面向连接的不可靠的网络传输协议 UDP协议前面大部分和TCP协议差不多,只是他的客户程序不需要连接,而是直接发送数据。>sendto() 和recvfrom() 函数使用这两个函数,则数据会在没有建立过任何连接的网络上传输。正好可以在进行无连接的UDP 通讯时使用的。因为数据报套接字无法对远程主机进行连接,想想我们在发送数据前需要知道些什么呢?是远程主机的IP 地址和
2016-07-28 19:33:32 567
原创 计算机网络Socket编程之TCP协议
>TCP协议位于传输层,是一种面向连接的可靠的传输协议>socket(套接字):是IP地址与端口号的统称>套接字的基本结构 struct sockaddr 这个结构用来存储套接字地址结构体的定义 struct sockaddr { unsigned short sa_family; /* address族, AF_xxx */ har sa_
2016-07-28 17:25:39 492
原创 路由表建立策略
》路由:当作名词来讲,表示数据报从源地址到目标地址所经历的一系列节点是一条路径。 当做动词来讲,某个路由节点为数据报选择投递方向路径的选路过程。 》一个具有路由能力的路由器或者主机都会维护一张路由表,通过查询路由表来决定哪个节点投递数据报。》路由表需要一个建立过程,建立过程其实就是初始化路由表,不同的网络操作系统有不同的初始化方式,大体来说常见
2016-07-22 20:06:39 1694
原创 IP分片
》引入IP分片的原因: 在数据链路层,以太网和802.3对数据帧的长度都有一个限制,最大长度为1500和1492个字节,这个特性称为MTU。当IP层的数据报要传向数据链路层,并且比MTU大,则这时就需要对数据报进行分片,把数据报分成若干片,每一片都小于MTU。》IP层如何对数据报进行分片: IP分片发生在IP层,不仅源端主机会进行分片,源端网
2016-07-21 20:43:56 714
原创 Linux之可重入函数与线程安全
》 首先什么是可重入函数呢? 进程在调用一个函数时(用户态),因为遇见中断,异常或者系统调用进入内核,内核处理完异常在回用户态之前检查到有信号待处理,于是切换到信号处理函数,恰好信号处理函数也调用了同一个函数,程序执行完后回到内核态,再回到用户态之前的程序处接着执行。 像上面程序一样,同一个函数被不同的控制流程调用,有可能在第一次没返� Մy�j`y���_S(�
2016-07-13 15:40:43 1445
原创 数据结构之超级简单的红黑树
这两天看了一下红黑树,自己总结了一点红黑树的性质和如何插入数据,写出来自己的理解分享给大家,有什么问题希望指出。 》什么是红黑树:红黑树是基于平衡树也就是它也需要符合平衡树的特性。其次,红黑树,顾名思义就是树的节点不仅包括数据,指针,还要有颜色,一个节点不是红色就是黑色。 》红黑树的性质:1.树的根节点必须是黑色
2016-07-07 14:38:00 402
原创 Linux进程通信之管道
》进程通信:是指进程之间的信息交换,所交换的内容少则一个状态或数值,多则成千上万个字节。》之前所讲的进程之间交换信息的方法只有fork()或者exec传送打开文件,或者通过文件系统。现在我们要说明进程之间相互通信的其他技术--------IPC(InteProcess Communication)》IPC类型包括:半双工管道,FIFO
2016-07-06 08:43:56 578
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人