先来看一下函数原型:#include int epoll_create(int size); //创建内核事件表 int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event); //注册文件描述符 int epoll_wait(int epfd, struct epoll_event *events 作者:ythunder 发表于 2017/03/23 04:02:25 原文链接 https://blog.csdn.net/ythunder/article/details/65216363 阅读:822 继续阅读 >>


卢晓丹 17/03/23 04:02:25
使用 #include typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t handler); 参数1:我们要进行处理的信号。命令kill -l查看(共64个),这些信号都是系统定义的宏。 参数2:我们处理的方式(3种)。 第一种: signal(SIGINT, SI 作者:ythunder 发表于 2017/03/23 01:22:03 原文链接 https://blog.csdn.net/ythunder/article/details/64964041 阅读:464 继续阅读 >>


卢晓丹 17/03/23 01:22:03
我平时在进行网络编程时,会将服务器的IP地址设置为127.0.0.1。然后绑定端口,开始监听。但是对于服务器来说,除了127.0.0.1,还有内网IP和公网IP,绑定本地的话只能局域网传输,所以,应该怎么绑定? 先复习一下IP类型: IP地址一共分为5类,即A~E,它们分类的依据是其net-id所占的字节长度以及网络号前几位。 A类地址:网络号占1个字节。网络号的第一位固定为0。 B类地 作者:ythunder 发表于 2017/03/16 16:56:30 原文链接 https://blog.csdn.net/ythunder/article/details/61931080 阅读:15106 评论:2 查看评论 继续阅读 >>


卢晓丹 17/03/16 16:56:30
这几天看了TCP/IP的相关知识,感觉要系统的整理很难,一段一段的整又容易乱,最后想到用解决问题的方式来整理。 这里有一点基本概念和模型图TCP/IP协议基本知识 问题: 1.TCP/IP,ICMP,ARP,FTP,DNS,DHCP,MTU这些,分别是什么? 2.TCP 和 UDP的区别及用途? 3.端口和服务间的关系及常用端口? 4.TCP三次握手? 5.私有地址和公有地址及其工作方式?有哪些私有(保留)地址? 6.IP地址分为几类?为解决IP地址不够用的问题又作出了什么改变? 7.IP地址,MAC地址为何缺一不可? 8.描述路由表选路过程? 9.路径MTU发现工作原理? 10.简述DNS工作过程? 11.ARP 的工作过程? 12.NAT 的工作机制? 13.TCP 凭哪些来保证其靠性? 14.访问www.baidu.com的过程? 15.断开链接四次挥手? 16.滑动窗口,拥塞控制,流量控制? 开始解决问题! 1.TCP/IP,ICMP,ARP,FTP,DNS,DHCP,MTU,NAT这些,分别是什么? TCP/IP协议 别说话 继续阅读 >>


卢晓丹 17/01/20 20:36:17
用markdown画的时序图效果图Created with Raphaël 2.1.0CLientCLientServerServerHashtableHashtableMemcacheMemcacheSlabSlab1. set data(key, value)2. forearch(key)/not found3. Not found4. get mem(key, value)5. get sl 作者:ythunder 发表于 2017/01/19 13:34:50 原文链接 https://blog.csdn.net/ythunder/article/details/54615215 阅读:1127 继续阅读 >>


卢晓丹 17/01/19 13:34:50
HTTP 主要有这些不足,例举如下 • 通信使用明文(不加密),内容可能会被窃听 • 不验证通信方的身份,因此有可能遭遇伪装 • 无法证明报文的完整性,所以有可能已遭篡改 作者:ythunder 发表于 2016/12/31 22:10:54 原文链接 https://blog.csdn.net/ythunder/article/details/53579319 阅读:1504 继续阅读 >>


卢晓丹 16/12/31 22:10:54
我们在网络编程时,一般过程是创建套接字,然后绑定端口,然后开始监听,那么这个所谓的监听数量为什么一般很小,但是能接收很多连接,恩,后来才知道不在一个过程上,下面先从listen函数看起。listen(socket, backlog);socket backlog定义内核监听队列的最大长度。内核为任何一个给定的监听套接字维护两个队列: 1) 未完成连接队列。每个这样的SYN分节对应其中一项:已由某个 作者:ythunder 发表于 2016/12/27 16:48:56 原文链接 https://blog.csdn.net/ythunder/article/details/53869426 阅读:2496 继续阅读 >>


卢晓丹 16/12/27 16:48:56
好多人都喜欢重新造一个轮子, 所以这个世界上的的轮子千奇百怪. 作为在这些轮子下面苟延残喘的洒家,往往不得不无尽的寻找两个轮子之间转换的方法. STL库, 作为标准库, 在写C++的时候理所当然的, 被各种使用. const char * 数组, 作为和C一起过来的小伙伴, 在很多场合下也会被调用. 如果脑抽居然还打算使用Qt, 那么,Qt自带的QString, 恐怕也很难有人能完全不使用. 于是乎 作者:ythunder 发表于 2016/12/22 13:02:11 原文链接 https://blog.csdn.net/ythunder/article/details/53812850 阅读:4592 继续阅读 >>


卢晓丹 16/12/22 13:02:11
计算机的文件是一种存储和组织计算机数据的方法,是一套实现了数据的存储、分级组织、访问和获取等操作的抽象数据类型。设备文件设备文件与系统的某个设备相对应。在内核中,每种设备文件都有与之相对应的设备驱动程序,用来处理设备的所有I/O请求。设备划分为两类: 字符型设备基于每个字符处理数据。终端和键盘 块设备每次处理一块设备。块的大小取决于设备类型。磁盘和磁带设备。 磁盘和分区常规文件和目录通常放在硬盘设备 作者:ythunder 发表于 2016/12/18 15:49:46 原文链接 https://blog.csdn.net/ythunder/article/details/53716224 阅读:508 继续阅读 >>


卢晓丹 16/12/18 15:49:46
通信双方,请求访问文本或图像等资源的一端为客户端,提供资源响应的一端为服务器端。对于一条通信线路来说,服务器端和客户端是明确分开的。 请求必须由客户端发出,由服务器响应回复。HTTP/1.0 和 HTTP/1.1 支持的方法 关于持久化连接早期的HTTP连接每进行一次HTTP通信就要断开一次TCP连接,如果网页中包含很多其他资源,就存在许多无谓的请求和断开,增加了通信的开销,HTTP/1.1 和 作者:ythunder 发表于 2016/12/12 09:09:27 原文链接 https://blog.csdn.net/ythunder/article/details/53484883 阅读:499 继续阅读 >>


卢晓丹 16/12/12 09:09:27