上一页 1 ··· 46 47 48 49 50 51 52 53 54 ··· 56 下一页
摘要: 先看TCP IP的10种状态,如下所示: 三次握手: 客户端A端发送SYN,然后进入SYN_SENT状态,服务器B端接收到SYN后,返回一个响应ACK,同时也发送一个SYN,然后B端进入SYN_RCVD状态,A端收到ACK后进入ESTABLISHED状态,然后发送一个ACK,服务器B端收到ACK后进 阅读全文
posted @ 2018-08-01 21:03 周伯通789 阅读(450) 评论(0) 推荐(0) 编辑
摘要: 我们先看一下服务器中存在僵尸进程的情况。 服务器是多进程模型,客户端是单进程。 服务器程序如下: 客户端程序如下: 执行结果如下: 可以看到,当客户端使用ctrl+c关闭时,服务器中的子进程成了僵尸进程。这是因为,子进程死了,但是没有进程给它收尸,我们可以调用signal(SIGCHLD, SIG_ 阅读全文
posted @ 2018-08-01 19:00 周伯通789 阅读(533) 评论(0) 推荐(0) 编辑
摘要: TCP IP协议是流协议,对上层协议来讲是没有边界的,主机A发送两个消息M1和M2,如下图所示: 主机A发送了M1和M2,主机B在接收时有4种情况: 1、先收了M1,又收了M2 2、M1、M2一起收到了 3、M1和M2的一部分一起收到的,又收到了M2的一部分 4、先收到了M1的一部分,然后M1的下一 阅读全文
posted @ 2018-07-30 23:28 周伯通789 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 一般情况下,服务器的长连接和短连接不是服务器说了算,而是客户端说了算。因为服务器是给别人提供业务的,一旦连接建立起来之后,服务器端不会主动把连接给close掉。 客户端发送一笔业务,没有关闭连接,然后又发送一笔业务,还是没有关闭连接,这个连接叫长连接,就是说客户端和服务器端建立完业务以后,就不断开连 阅读全文
posted @ 2018-07-29 19:24 周伯通789 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 什么是socket? socket可以看成是用户进程与内核网络协议栈的编程接口。是一套api函数。 socket不仅可以用于本机的进程间通信,还可以用于网络上不同主机间的进程间通信。 工业上使用的为tcp ip四层模型,是OSI七层模型的简化,如下图所示: tcp ip协议是每一层与每一层的通信。 阅读全文
posted @ 2018-07-29 09:43 周伯通789 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 文本过滤涉及到以下知识: 正则表达式、find、grep、awk、sed、合并与分割(sort、uniq、join、cut、paste、split)。 正则表达式: 基本元字符集及其含义: 匹配IP地址: find: 示例如下: find命令练习实例: find和xargs一起使用: find和gr 阅读全文
posted @ 2018-07-28 19:15 周伯通789 阅读(306) 评论(0) 推荐(0) 编辑
摘要: shell中的控制流包括if then else语句,case语句,for循环,until循环,while循环,break控制,continue控制。 条件测试: 有时判断字符串是否相等或检查文件状态或是数字测试等,Test命令用于测试字符串、文件状态和数字。 文件状态测试: 在Linux下敲入命令 阅读全文
posted @ 2018-07-28 17:47 周伯通789 阅读(251) 评论(0) 推荐(0) 编辑
摘要: shell输入与输出: read : read语句可以从键盘或者文件的某一行文本中读入信息,并将其赋值给一个变量。 read var1 var2 ... 若只指定了一个变量,那么read将会把所有的输入赋值给该变量,直至遇上第一个文件结束符或者回车。 如果给了多个变量,它们按照顺序分别赋予不同的变量 阅读全文
posted @ 2018-07-28 14:51 周伯通789 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 小知识: ipcs可以查看系统中创建的ipc进程间通信资源,例如信号量、共享内存等。示例如下: 什么是shell? shell是核心程序kernel之外的指令解析器,是一个程序,同时是一种命令语言和程序设计语言。 shell是命令解析器,用户输入命令,它去解析。 shell的类型: ash、bash 阅读全文
posted @ 2018-07-28 10:16 周伯通789 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 信号的阻塞、未达: linux中进程1向进程2发送信号,要经过内核,内核会维护一个进程对某个信号的状态,如下图所示: 当进程1向进程2发送信号时,信号的传递过程在内核中是有状态的,内核首先要检查这个信号是不是处于阻塞状态,然后检查这个信号是不是处于未决状态,最后检查是不是忽略该信号。 更详细的信号传 阅读全文
posted @ 2018-07-27 00:09 周伯通789 阅读(309) 评论(0) 推荐(0) 编辑
上一页 1 ··· 46 47 48 49 50 51 52 53 54 ··· 56 下一页