自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

csdn_kou的博客

等风来

  • 博客(19)
  • 资源 (1)
  • 收藏
  • 关注

原创 TCP三次挥手四次握手(面试总结)

经典的两张图我也不知道出处,希望大牛指教建立连接协议(三次握手)(1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。(2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。(3) 客户必须再次回应服务段...

2018-08-26 20:49:00 183

原创 简答面向数据报,面向字节流

先来一个例子 用UDP传输100个字节的数据:面向数据报如果发送端调用一次sendto, 发送100个字节, 那么接收端也必须调用对应的一次recvfrom, 接收100个字节; 而不能循环调用10次recvfrom, 每次接收10个字节;面向字节流由于缓冲区的存在, TCP程序的读和写不需要一一匹配, 例如: 写100个字节数据时, 可以调用一次write写100个字节,...

2018-08-26 19:52:05 3007 1

原创 守护进程nohup的用法

■关于nohup在使用nohup命令的时候,经常由于输出nohup.out的路径没有写入权限,而无法使用nohup。这是可以使用Linux重定向的方法,将nohup.out重定向至一个有写入权限的路径,或者直接扔到/dev/null中。nohup ./program >/dev/null 2>/dev/null &或者nohup ./program &amp

2018-08-26 15:35:12 1463

转载 文件描述符和fcntl及阻塞非阻塞

Linux 文件描述符和重定向https://www.cnblogs.com/chenmh/p/5382044.htmlfcntl函数的用法总结https://www.cnblogs.com/zxc2man/p/7649240.html简述linux同步与异步、阻塞与非阻塞概念以及五种IO模型https://www.cnblogs.com/chaser24/p/6112071....

2018-08-26 10:36:26 902

转载 大数据多路归并算法

https://blog.csdn.net/wongson/article/details/49209903先把一个大的数据分成若干小份,然后对这些小份文件进行排序。排序好之后对这些小份文件进行如下处理。我们举个简单的例子:文件1:3,6,9 文件2:2,4,8 文件3:1,5,7第一回合: 文件1的最小值:3 , 排在文件1的第1行 文件2的最小值:2,排在文件2的第1行...

2018-08-22 13:16:12 1528

转载 内存泄漏Valgrind

内存泄漏Valgrindvalgrind –tool=memcheck –leak-check=full [Your progame option];https://cloud.tencent.com/developer/article/1006199https://www.cnblogs.com/zhoudayang/p/6110360.htmlhttps://www.cnbl...

2018-08-18 17:59:02 112

原创 C语言模拟实现标准库函数之qsort() <3>

#include &lt;stdio.h&gt;void sort(int arr[],int left ,int right){ if(left &gt; right) return; int i = left; int j = right; int get = arr[left]; while(i &lt; j){ ...

2018-08-17 11:24:58 283

转载 IP数据包格式netinet/ip.h

转载地址https://www.cnblogs.com/embedded-linux/p/4986449.html头文件netinet/ip.h中定义ip:struct ip{#if __BYTE_ORDER == __LITTLE_ENDIANunsigned int ip_hl:4; /* header length */unsigned int ip_v:4; /* ...

2018-08-15 21:18:24 8201

原创 转义字符速查表

转义字符速查表

2018-08-14 09:12:57 845

原创 为什么计算机起始时间是1970年1月1日

1969年8月,贝尔实验室的程序员肯汤普逊利用妻儿离开一个月的机会,开始着手创造一个全新的革命性的操作系统,他使用B编译语言在老旧的PDP-7机器上开发出了Unix的一个版本。随后,汤普逊和同事丹尼斯里奇改进了B语言,开发出了C语言,重写了UNIX,新版于1971年发布。那时的计算机操作系统是32位,时间用32位有符号数表示,则可表示 68 年, 用32位无符号数表示,可表示136年。 他...

2018-08-09 13:57:58 47325 9

原创 关于argc和argv的输出

代码#include &lt;stdio.h&gt;int main(int argc ,char * argv[]){ printf("argc -&gt;%d\n",argc); for(int i = 0; i &lt; argc;i++){ printf("%s\n",argv[i]); } return 0;}输出结果...

2018-08-08 09:20:06 1829

原创 运算符&与&&,|与||的区别

|和&amp;是位运算,运算结果是二进制数。 &amp;&amp;,||是逻辑运算,运算结果是真,或者假。6&amp;3=110&amp;011=010=26|3=110|011=111=7&amp;,&amp;&amp;和||计算时注意, 题目:条件1&amp;&amp;条件2&amp;&amp;条件3 如果条件1就是假的,后面就不计算了...

2018-08-06 16:50:51 25520 1

原创 浅谈socket网络编程函数参数(二)

bind()函数bind()函数把一个地址族中的特定地址赋给socket。 例如对应AF_INET、AF_INET6就是把一个ipv4或ipv6地址和端口号组合赋给socket。int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);参数解析sockfd:即socket描述字,它是通过soc...

2018-08-06 15:01:07 1348 2

原创 浅谈socket网络编程函数参数(一)

socket函数解析概念:每个进程的进程空间里都有一个socket描述符表。套接字描述符表属于一个进程,而socket地址结构位于操作系统的内核缓冲。函数原型 #include &amp;lt;sys/socket.h&amp;gt; int socket(int domain, int type, int protocol);函数参数family...

2018-08-06 14:22:27 10867 4

原创 linux网络编程Internet Socket地址,套接字,和函数

文章内容节选《linux/UNIX 系统网络编程》Internet domain socket地址有两种:IPv4 IPv6IPv4被存储在结构体中, 该结构体在 netinet/in.h 中进行定义cd usr/include/netinet/in.hstruct in_addr{ in_addr_t s_addr; //32位IPv4地址}struct...

2018-08-06 12:16:26 521

原创 常用的友元重载运算符OSTREAM

对&lt;&lt;运算符重载,让他能和cout一起显示对象内容。 显示值可以使用show(),但是使用cout&lt;&lt;更方便。ostream类对该运算符进行了重载,将其转换成输出工具。cout就是一个ostream的对象,他可以自动识别所有的c++基本类型。这是因为每种类型ostream他都包含了相应的重载operator&lt;&lt;定义。void ostream&amp...

2018-08-05 11:05:18 1247

原创 怎么在vs中查看一个数组的所有元素

在监视窗口,我们想要查看所有的数组元素。这个时候int arr[] = {1,2,3}arr只显示1正确的方法arr,10

2018-08-05 10:06:09 8176 1

原创 Ubuntu各版本主要差异

Ubuntu各版本主要差异 (重定向自Ubuntu , kubuntu与xubuntu的差别 ) Ubuntu官方考虑到使用者的不同需求,提供各种不同的发行版。这几种发行版本的差别在于桌面环境和预设安装的软体不同,但套件库是采用一样的,所以您当然可以在安装后切换成别的发行版本。 实际上各个发行版本都是以一个叫作虚拟套件的套件包来控制,也就是那个虚拟套件是空的,但是因为里面设定了相依到很多该发...

2018-08-04 09:13:09 18834 1

原创 Makefile使用及多文件gdb 调试

文件内容[kou@localhost makefile]$ cat 1.c#include &amp;quot;3.h&amp;quot;int main(){ key_t key = ftok(&amp;quot;.&amp;quot;,1); printf(&amp;quot;%d\n&amp;quot;,add(1,2)); return 0;}[kou@localhost makefile]$ cat 2.c#

2018-08-04 09:10:39 3077

Redis开发与运维.png

Redis运维和开发学习笔记-全书思维导图。

2019-12-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除