Linux系统下CPU使用(load average)梳理

在平时的运维工作中,当一台服务器的性能出现问题时,通常会去看当前的CPU使用情况,尤其是看下CPU的负载情况(load average)。对一般的系统来说,根据cpu数量去判断。比如有2颗cup的机器。如果平均负载始终在1.2以下,那么基本不会出现cpu不够用的情况。也就是Load平均要小于Cpu的数量。 cpu负载的理解对于cpu负载的理解,首先需要搞清楚下面几个问题: 1234567...

top 命令详解

top linux下的任务管理器top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按...

图解零拷贝技术

磁盘可以说是计算机系统最慢的硬件之一,读写速度相差内存 10 倍以上,所以针对优化磁盘的技术非常的多,比如零拷贝、直接 I/O、异步 I/O 等等,这些优化的目的就是为了提高系统的吞吐量,另外操作系统内核中的磁盘高速缓存区,可以有效的减少磁盘的访问次数。

这次,我们就以「文件传输」作为切入点,来分析 I/O 工作方式,以及如何优化传输文件的性能。

CPU占用过高定位分析思路

CPU占用过高分析思路,以及解决方案。

Linux 文本处理三剑客:grep、sed 和 awk

awk、grep、sed是linux操作文本的三大利器,合称文本三剑客,也是必须掌握的linux命令之一。三者的功能都是处理文本,但侧重点各不相同,其中属awk功能最强大,但也最复杂。grep更适合单纯的查找或匹配文本,sed更适合编辑匹配到的文本,awk更适合格式化文本,对文本进行较复杂格式处理。

Linux相关操作

一、Linux 基本操作 a. 将 系统 hostname 改为 个人名称,如:zhang.san; hostnamectl set-hostname Marlowe.chen # 设置新的hostname b. 创建用户,用户名为:个人名称,如: zhang.san,将该用户加入root组并更改账户密码; useradd Marlowe.chen # 添加新用户passwd Mar...

用户态和内核态

用户态和内核态相关知识点回顾

局部性原理和工作原理

程序访问的局部性原理程序访问的局部性原理包括时间局部性和空间局部性。 空间局部性:在最近的未来要用到的信息(指令和数据),很可能与现在正在使用的信息在存储空间上是邻近的 时间局部性:在最近的未来要用到的信息,很可能是现在正在使用的信息高速缓冲技术是利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的、容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从而大...

信号与信号量的区别

信号由用户、系统或者进程发送给目标进程的信息,以通知目标进程某个状态的改变或系统异常。 信号量信号量是一个特殊的变量,它的本质是计数器,信号量里面记录了临界资源的数目,有多少数目,信号量的值就为多少,进程对其访问都是原子操作(pv操作,p:占用资源,v:释放资源)。它的作用就是,调协进程对共享资源的访问,让一个临界区同一时间只有一个进程在访问它。 区别信号是通知进程产生了某个事件,信号...

进程调度算法

介绍无论是在批处理系统还是分时系统中,用户进程数一般都多于处理机数、这将导致它们互相争夺处理机。另外,系统进程也同样需要使用处理机。这就要求进程调度程序按一定的策略,动态地把处理机分配给处于就绪队列中的某一个进程,以使之执行。 7种调度算法先来先服务调度算法(FCFS)先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中...