
Linux
文章平均质量分 71
stanjiang2010
这个作者很懒,什么都没留下…
展开
-
Linux服务器运行状况全面监测
<br /> <br />随着Linux应用的日益广泛,有大量的网络服务器使用Linux操作系统。为了全面衡量网络运行状况,就需要对网络状态做更细致、更精确的测量。SNMP协议的制订为互联网测量提供了有力支持。计算机系统是 由软件系统硬件系统组成的,检测硬件状态对于保障整个系统的稳定是非常重要的。不论操作系统是使用Linux、还是Windows,一旦硬件出现故障,那么整个系统的安全就严重了。这里我们主要监测Linux服务器的CPU、硬盘、内存、网络接口、主板等硬件的工作状态。<br />一、/pr转载 2010-07-02 15:48:00 · 6128 阅读 · 0 评论 -
awk应用技巧
1: 引用自身的变量不需要加 $ 符号,如 NF,NR等2: 引用外部变量需用 ' ' 包围变量名,如 '$1 ~ /'$pattern'/'3: 如果要在AWK操作前给变量赋值, 用-v , 如 AWK -v str=abcd4: AWK 的默认动作是 print原创 2011-01-04 20:12:00 · 2598 阅读 · 0 评论 -
Awk 中变量作用域的问题
本文从两个错误的例程开始,提出 Awk 中全局变量污染的现象,并分析其发生的原因。接下来,针对 Awk 变量作用域的特点,提出两种避免全局变量污染的常用方法,引出 Awk 中定义局部变量的方法,并提出修改过后的代码。然后,通过 Awk 的变量调试功能,提出修改过后代码存在的不足,转载 2011-01-12 11:43:00 · 5054 阅读 · 0 评论 -
awk学习精要
1. awk语言的最基本功能是在文件或字符串中基于指定规则来分解抽取信息,也可以基于指定的规则来输出数据。完整的awk脚本通常用来格式化文本文件中的信息。2. 三种方式调用awk1) awk [opion] 'awk_script' input_file1 [input_转载 2011-01-13 20:37:00 · 1010 阅读 · 0 评论 -
关于Linux常用的二进制文件分析方法
当你在unix下拿到一个二进制文件但不知道它是什么的时候,可以通过以下方法得到一此提示 1、 最首先应该尝试strings命令,比如拿到一个叫cr1的二进制文件,可以: $ strings cr1 | more 里面可能会有一些对于这个cr1的描述,这些信息都是编译之后在程序中留下的一些文本性的说明,所以可能会告诉你这个文件是什么. 比如有输出:转载 2011-06-22 10:58:00 · 4726 阅读 · 0 评论 -
Linux原子操作
所谓原子操作,就是该操作绝不会在执行完毕前被任何其他任务或事件打断,也就说,它的最小的执行单位,不可能有比它更小的执行单位,因此这里的原子实际是使用了物理学里的物质微粒的概念。 <br /><br />原子操作需要硬件的支持,因此是架构相关的,其API和原子类型的定义都定义在内核源码树的include/asm/atomic.h文件中,它们都使用汇编语言实现,因为C语言并不能实现这样的操作。 <br /><br />原子操作主要用于实现资源计数,很多引用计数(refcnt)就是通过原子操作实现的。原子类型定义转载 2011-02-23 22:15:00 · 960 阅读 · 0 评论 -
awk处理多个文件
<br />awk的数据输入有两个来源,标准输入和文件,后一种方式支持多个文件。<br /><br />如:<br />1. shell的Pathname Expansion方式:awk '{...}' *.txt <br /><br /># *.txt先被shell解释,替换成当前目录下的所有*.txt,<br /># 如当前目录有1.txt和2.txt,则命令最终为awk '{...}' 1.txt 2.txt<br /><br /><br />2. 直接指定多个文件: awk '{...}' a转载 2011-02-14 17:11:00 · 15282 阅读 · 2 评论 -
应用OProfile作性能测试(1)
评测 是表示不同性能特性和特征的数据的形式化总结或分析,它通常以图形和表的形式的出现。评测表提供为特定的处理器事件收集的采样的百分数或数量,比如高速缓存线路故障的数量、传输后备缓存( TLB )故障的数量,等等。 Oprofile 是用于 Linux 的若干种评测和性能监控工具中的一种。它可以工作在不同的体系结构上,包括 IA32, IA64 和 AMD Athlon 系列。它的开销小,将被包含在(Linux)2.6 版的内核中。Oprofile可以帮助用户识别诸如循环的展开、高速缓存的使用率低、低效的类型转载 2010-11-22 15:45:00 · 962 阅读 · 0 评论 -
应用OProfile作性能测试(2)
1. 概述<br /><br />oprofile 是 Linux 平台上,类似 INTEL VTune 的一个功能强大的性能分析工具。<br /><br />其支持两种采样(sampling)方式:基于事件的采样(event based)和基于时间的采样(time based)。<br /><br />基于事件的采样是oprofile只记录特定事件(比如L2 cache miss)的发生次数,当达到用户设定的<br />定值时oprofile 就记录一下(采一个样)。这种方式需要CPU 内部有性能计数器(转载 2010-11-22 16:23:00 · 979 阅读 · 0 评论 -
系统性能监控--linux top命令详解
<br /> <br />top命令和ps命令的基本作用是相同的,显示系统当前的进程和其它状况;但是top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态。如? 前台执行该命令,它将独占前台,直到用户终止该程序为止。<br /><br />比较准确的说,top命令提供了实时的对系统处理器的状态监视。它将显示系统中CPU最“敏感”的任务列表。该命令可以按CPU使用、内存使用、执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定。在后面的介绍中将把命令参数和交转载 2010-12-21 11:41:00 · 741 阅读 · 0 评论 -
linux下代码覆盖率检查工具---gcov的用法
1.增加编译和链接的参数:-fprofile-arcs -ftest-coverage以Eclipse为例,为一个C++工程增加上述参数:<br />Project->Properties->C/C++ Build->Settings->GCC C++ Compiler->Command: 输入 g++ -fprofile-arcs -ftest-coverage<br /><br />Project->Properties->C/C++ Build->Settings->GCC C++ Linker->C转载 2010-06-23 09:24:00 · 1953 阅读 · 0 评论 -
linux下让进程运行在指定的cpu上(二)
<br /> 在SMP情况下,Linux调度器有负载均衡机制,将一个进程在不同CPU之间进行迁移。因此,一个进程运行在哪个CPU上是不确定的,但有时候为了测试数据方便,却有这样的需求,就是将某个进程绑定到一个CPU上运行。<br />怎么办呢?如果你有源代码,那么很简单,在代码里面加上sched_setaffinity()函数就可以了,但如果没有呢?<br />没关系,我们有秘密武器,那就是taskset命令。<br />该命令最简单的用法是:<br />taskset [mask] [command]<原创 2010-06-23 14:39:00 · 2791 阅读 · 0 评论 -
linux下让进程运行在指定的cpu上(一)
最近负责的svr压力比较大,业务逻辑有点复杂,能优化的地方已经全部优化了,目前每秒3k次,cpu负载还是比较高top看一下,4核的cpu负载不是太均衡,打算考虑一下将业务进程指定到3个cpu上运行,另外一个cpu专门负责处理网络收发包;打算尝试一下,如果还是不行,再过段时间,访问量再增加的话,就要加机器了,呜呜补充:今天测试了一下,效果挺好,同样进程数的情况下,进行cpu绑定每个cpu都利用起来了,负载也比不绑定的情况下好了很多分析一下有效果的原因: 看了《linux内核设计与实现》的42节,觉得人为控制一转载 2010-06-21 18:14:00 · 1168 阅读 · 0 评论 -
管理处理器的亲和性(affinity)
<br /> <br />了解 Linux® 2.6 调度器如何处理 CPU 亲和性(affinity)可以帮助您更好地设计用户空间的应用程序。软亲和性(affinity) 意味着进程并不会在处理器之间频繁迁移,而 硬亲和性(affinity) 则意味着进程需要在您指定的处理器上运行。本文介绍了当前的亲和性(affinity)机制,解释为什么和如何使用亲和性(affinity),并给出了几个样例代码来显示如何使用这种功能。<br />简单地说,CPU 亲和性(affinity) 就是进程要在某个给定的 CP转载 2010-06-21 18:10:00 · 752 阅读 · 0 评论 -
Linux服务器程序性能测试的一些思考
<br /> 工作中对项目压力测试的一些心得,先自我作一个小结吧!(一)宏观与微观相结合 (1)宏观层面 即系统的一些关键性能指标,如:各进程所占CPU的百分比、内存消耗、网络包量、磁盘IO等等,详细指标列举如下:<br />名称<br />描述<br />参考值<br />CPU useage<br />CPU 的使用时间百分比。<br />平均值小于70%<br />Process virtual memery size<br />进程使用的内存空间总量,包括物理内存和swap内存原创 2010-07-24 09:24:00 · 2535 阅读 · 0 评论 -
Linux系统常用性能监测工具
<br />sysstat工具包提供的主要命令:iostat mpstat sar<br />sar的最后两个参数一般是interval count<br />1、sar -u 1 5<br />输出CPU使用情况的统计信息,每秒输出一次,一共输出100次<br />17时06分01秒 CPU %user %nice %system %iowait %idle<br />17时06分02秒 all 1.27 0.00 0.51 1.01 97.22<br />17时06分03秒 all 0.00 0.00原创 2010-07-02 15:46:00 · 1316 阅读 · 1 评论 -
编译链接和加载
作者:phylips@bmy 2011-11-06 出处:http://duanple.blog.163.com/blog/static/7097176720111141085197/1. 序最近在折腾各种.so,碰到了一些问题,一开始对于很多错误也没有头绪,茫然不知所措。索性化了一天多时间将>中部分内容略读了一遍,主要是关于编译,链接和加载这块的。于是顺便做个笔记,方转载 2011-12-14 11:44:03 · 3196 阅读 · 0 评论