随笔分类 - 【01】操作系统
摘要:一、时间单位与转换 1 秒(second)[s] = 1000 毫秒millisecond[ms]1 毫秒millisecond[ms] = 1000 微秒microsecond[us]1 微秒microsecond[us] = 1000 纳秒nanosecond[ns]1 纳秒nanosecond
阅读全文
摘要:自从第一台电子计算机问世,人类和机器的交流方式就成为了软件工程师和计算机从业者的主要研究方向,更有效更简便的编程语言成为了软件工程师的新宠儿,伴随着计算机的飞速发展,计算机的硬件升级速度也越来越快,对编程语言的要求也日益严格。在过去的几十年,编程语言有了长足的发展,至今已经有四代语言问世。大量的编程
阅读全文
摘要:QUIC(Quick UDP Internet Connection)是谷歌制定的一种基于UDP的低时延的互联网传输层协议。 1、避免前序包阻塞HTTP2的最大特性就是多路复用,而HTTP2最大的问题就是队头阻塞。首先了解下为什么会出现队头阻塞。比如HTTP2在一个TCP连接上同时发送3个Strea
阅读全文
摘要:UDP(User Datagram Protocol)用户数据报协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。 一、UDP报头UDP报头由4个部分组成,其中两个是可选的(粉红背景标出部分): (1)各16bit的来源端口和目的端口用来标记发送和接受的应用进程。因为UDP不需要
阅读全文
摘要:TCP协议:传输控制协议。 一、TCP保证可靠性的机制1、校验和 TCP报头有16位检验和: 由发送端填充, 检验形式有CRC校验等. 如果接收端校验不通过, 则认为数据有问题. 此处的校验和不光包含TCP首部, 也包含TCP数据部分. 2、序列号(按序到达)序列号:TCP将每个字节的数据都进行了编
阅读全文
摘要:一、HTTP/1.1存在的问题 1、TCP 连接数限制2、线头阻塞 (Head Of Line Blocking) 问题3、Header 内容多,而且每次请求 Header 不会变化太多,没有相应的压缩传输优化方案4、为了尽可能减少请求数,需要做合并文件、雪碧图、资源内联等优化工作,但是这无疑造成了
阅读全文
摘要:HTTPS是身披SSL外壳的HTTP。HTTPS是一种通过计算机网络进行安全通信的传输协议,经由HTTP进行通信,利用SSL/TLS建立全信道,加密数据包。HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性。TLS是传输层加密协议,前身是SSL协议,由网景公司199
阅读全文
摘要:HTTP协议(Hypertext Transfer Protocol,超文本传输协议),一种无状态的、应用层的、以请求/应答方式运行的协议,它使用可扩展的语义和自描述消息格式,与基于网络的超文本信息系统灵活的互动。 是浏览器和服务器之间进行“沟通”的一种规范。 1、背景HTTP协议基于TCP协议,前
阅读全文
摘要:一、网络分层和协议 两台PC进行通信的过程,有很多工作要处理,把这些工作分类,每一类叫做一层,每一层按照某种协议来执行。为了把全世界的所有不同类型的计算机(操作系统+硬件)都连接起来,就必须规定一套全球通用的协议,互联网协议簇(Internet Protocol Suite)就成为了通用协议标准。互
阅读全文
摘要:1、黑白名单当链的默认策略为ACCEPT时,链中的规则对应的动作应该为DROP或者REJECT,表示只有匹配到规则的报文才会被拒绝,没有被规则匹配到的报文都会被默认接受,这就是"黑名单"机制。当链的默认策略为DROP时,链中的规则对应的动作应该为ACCEPT,表示只有匹配到规则的报文才会被放行,没有
阅读全文
摘要:1、iprange 使用iprange扩展模块可以指定"一段连续的IP地址范围",用于匹配报文的源地址或者目标地址。--src-range:匹配报文的源地址所在范围--dst-range:匹配报文的目标地址所在范围eg:iptables -t filter -I INPUT -m iprange -
阅读全文
摘要:一、Netfilter Netfilter是由Rusty Russell提出的Linux 2.4内核防火墙框架,该框架既简洁又灵活,可实现安全策略应用中的许多功能,如数据包过滤、数据包处理、地址伪装、透明代理、动态网络地址转换(Network Address Translation,NAT),以及基
阅读全文
摘要:一、分支预测 当包含流水线技术的处理器处理分支指令时就会遇到一个问题,根据判定条件的真/假的不同,有可能会产生转跳,而这会打断流水线中指令的处理,因为处理器无法确定该指令的下一条指令,直到分支执行完毕。流水线越长,处理器等待的时间便越长,因为它必须等待分支指令处理完毕,才能确定下一条进入流水线的指令
阅读全文
摘要:一、CPU Loadcpu load是对使用或者等待cpu进程的统计(数量的累加):每一个使用(running)或者等待(runnable)CPU的进程,都会使load值+1;每一个结束的进程,都会使load值-1。大部分Unix操作系统只计算running和runnable的进程。但是Linux系
阅读全文
摘要:一、虚拟内存电脑里内存分内存条(这里我们叫物理内存)和硬盘,内存条保存程序运行时数据,硬盘持久保存数据。那么虚拟内存是什么? 程序运行会启动一个进程,进程里有程序段、全局数据、栈和堆,这些都会加载到内存里,每一部分都有对应的内存地址,进程就是一直在处理这些地址中数据。然而在Linux下,进程不能直接
阅读全文
摘要:一、概念netstat命令用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。netstat是在内核中访问网络及相关信息的程序,它能提供TCP连接,TCP和UDP监听,进程内存管理的相关报告。 二、命令格式1、直接输入 netstat命令 (1)Acti
阅读全文
摘要:一、概念Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,且可以通过交互式命令自定义显示内容,类似于Windows的任务管理器. 二、命令格式 1、系统信息统计 前五行是系统整体状态的统计信息展示区域。 (1)第一行显示服务器概况如下所示,第一行列出了服务器运行了多长时间,当
阅读全文
摘要:一、概念linux tail命令用途是按照要求将指定的文件的最后部分输出到标准设备,一般是终端,就是把某个档案文件的最后几行显示到终端上,如果该档案有更新,tail会自动刷新,确保你看到最新的档案内容。 二、命令格式 最常用 -nf
阅读全文
摘要:一、概念less 工具也是对文件或其它输出进行分页显示的工具,是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 、tail更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup] [pagedo
阅读全文
摘要:一、概念grep(Global search Regular Expression and Print out the line)强大的文本搜索工具,从文本文件或管道数据流中筛选匹配的行及数据,并把匹配的行/特定内容打印出来。 二、grep命令格式 1、参数: 举例演示说明: (1)-i,–igno
阅读全文