
Linux
文章平均质量分 52
blade2001
这个作者很懒,什么都没留下…
展开
-
利用gcov测试代码覆盖率
1、编写源代码(文件名src.c): #include int main(void){ int i, total; total = 0; for (i = 0; i total += i; if (total != 45) printf("Failure/n"); else转载 2007-06-10 13:17:00 · 1818 阅读 · 0 评论 -
自我学会利用Linux系统上已有的开发库
1、查看库文件是由哪个软件包提供的空闲时打开/usr/lib目录(因为我知道这个目录下放着一些库文件,是我们开发者可以利用的)想看看我的系统中有哪些库。看到一个libz.so,于是用命令查看: dpkg -S /usr/lib/libz.so 此命令输出如下信息:转载 2007-06-10 13:24:00 · 1148 阅读 · 0 评论 -
gcc g++ 参数
[介绍] gcc and g++分别是gnu的c & c++编译器 gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] 3.有汇编变为目标代码(机器代码)生成.o的文件[汇编器as] 4.连接目标代码,生成可执行程序[链接器ld] [参数详解] -x language filename原创 2007-06-10 12:31:00 · 9895 阅读 · 1 评论 -
Linux的内存管理(free 详解)
Linux的内存管理,实际上跟windows的内存管理有很相像的地方,都是用虚拟内存这个的概念,说到这里不得不骂MS,为什么在很多时候还有很大的物理内存的时候,却还是用到了pagefile. 所以才经常要跟一帮人吵着说Pagefile的大小,以及如何分配这个问题,在Linux大家就不用再吵什么swap大小的问题,我个人认为,swap设个512M已经足够了,如果你问说512M的SWAP不够用怎么办?转载 2007-06-10 12:39:00 · 5067 阅读 · 1 评论 -
走向 Linux 2.6
走向 Linux 2.6(Linux 2.6 的一些重要特性)http://www.ibm.com/developerworks/cn/linux/l-inside/index.html#resourcesLinux多线程编程和Linux 2.6下的NPTLhttp://nathanxu.blog.51cto.com/50836/56649剖析Linux 2.6内核移植—超线程篇ht原创 2008-05-30 13:16:00 · 615 阅读 · 0 评论 -
磁盘空间满故障排除
磁盘空间满一般情况下使用du可以快速定位到那个目录占用了大量的磁盘空间。这里主要讲两个使用du无法查看的情况。# 现象/mnt分区磁盘使用率达到100%# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda2 97G 1.5G 90G 2% //dev/sda1转载 2008-11-20 21:42:00 · 2174 阅读 · 0 评论 -
getsockopt() setsockopt() ioctlsocket() fcntl() 用法
getsockopt() 简述: 获取一个套接口选项。 #include int PASCAL FAR getsockopt( SOCKET s, int level, int optname, char FAR* optval, int FAR* optlen); s:一个标识套接口的描述字。 level:选项定义的层次。支持的层次仅有SOL转载 2009-05-12 14:30:00 · 6604 阅读 · 0 评论 -
利用Hudson构建c/c++持续集成
利用Hudson构建c/c++持续集成Hudson: 可扩展的持续集成(CI)引擎主要用于:1.持续、自动地构建/测试软件项目,如CruiseControl与DamageControl。2.监控一些定时执行的任务。Hudson拥有的特性包括:易于安装-只要把hudson.war部署到servlet容器,不需要数据库支持。 易于配置-所有配置都是通过其提供的web界面实现。 集成原创 2009-08-21 13:59:00 · 6074 阅读 · 3 评论 -
lsof-查看进程打开的文件
lsof(lsof的全称是list open files),此工具可以用来查看正在运行中的进程打开了哪些文件、目录和套接字;是系统监测工具之一一般root用户才能执行lsof命令,普通用户可以看见/usr/sbin/lsof命令,但是普通用户执行会显示“permission denied” 我总结一下lsof指令的用法: lsof abc.txt 显示开启文件abc.txt的进程原创 2009-06-17 09:32:00 · 22862 阅读 · 0 评论 -
Linux 同步方法
Linux 同步方法并发和锁定当存在并发特性时,必须使用同步方法。当在同一时间段出现两个或更多进程并且这些进程彼此交互(例如,共享相同的资源)时,就存在并发 现象。在单处理器(uniprocessor,UP)主机上可能发生并发,在这种主机中多个线程共享同一个 CPU 并且抢占(preemption)创建竞态条件。抢占 通过临时中断一个线程以执行另一个线程的方式来实现 CPU 共享转载 2010-02-05 19:31:00 · 791 阅读 · 0 评论 -
备份一下我的.vimrc
网上流行的一个版本view plaincopy to clipboardprint?""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 一般设定 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 设转载 2010-02-05 19:46:00 · 601 阅读 · 0 评论 -
透过 Linux 内核看无锁编程
Linux 内核中的无锁分析 http://linux.cn/home/space-2-do-thread-id-2049.html转载 2010-02-05 20:05:00 · 670 阅读 · 0 评论 -
Linux驱动程序开发入门
Linux驱动程序开发入门原创 2010-10-13 09:08:00 · 862 阅读 · 0 评论 -
查看rpm包内容和解压获取rpm包文件
<br />◆ 查看RPM包内容<br />rpm -qpl *.rpm<br />◆ 解压获取rpm包文件<br />rpm2cpio *.rpm| cpio -div<br />【cpio】<br />用法 :cpio [ option ] [ <> device ]<br />例: 备份/home目录<br /><1>建立备份<br />(1)绝对路径:find /home -print |cpio -ov > home.cpio <br />(2)相对路径:cd /home; find . -pr转载 2010-11-25 11:30:00 · 3824 阅读 · 0 评论 -
VMware虚机时间同步及校准-VMware Linux 时间过慢或过快解决方法
有的朋友在使用VMware产品时,可能会遇到虚机时间不准确的问题,在着手解决此问题前,请阅读此文档:http://www.vmware.com/pdf/vmware_timekeeping.pdf适用范围:VMware ESX3/ESXi3.5;VMware Workstation 6.5该文档详细的讲述了为何虚机的时间为何会不准确,针对此问题VMware提供了以下解决方案:1、虚机的转载 2011-06-22 11:28:00 · 5508 阅读 · 0 评论 -
AF_INET和PF_INET的细微不同
在写网络程序的时候,建立TCP socket: sock = socket(PF_INET, SOCK_STREAM, 0); 然后再绑定本地地址或连接远程地址时需要初始化sockaddr_in结构,其中指定address family时一般设置问AF_INET,即使原创 2011-07-29 15:16:28 · 833 阅读 · 0 评论 -
Linux下c实现协程-Coroutine
Widnows 是提供了用户级线程的,类似 coroutine 需要用户主动是切换。这在单线程程序中非常有用。线程调度模块只负责提供堆栈,环境的保存。不负责分配时间片等。自己实现 coroutine 并不难,但能用操作系统提供的可以得到更多的便利。Windows 中把这种用户级线程叫做 Fiber,纤维的意思。比较通用的译名是纤程。我们可以把一个 thread 转换成一个原创 2011-10-25 16:44:27 · 10506 阅读 · 0 评论 -
SNMP监测 Radisys media server 性能
日前要监测Radisys media server,要查看CPU及内存的利用率。 咨询了Radisys TAC得知可以通过snmp来实现实时性能参数的查询.1. 从Radisys拿到snmp mib 文件2. 在media server上启用SNMP功能: 需要在node configuration>> Configure SNMP agent中定义snmp commun原创 2011-11-29 15:25:35 · 1330 阅读 · 0 评论 -
Linux Kickstart无人值守安装
Linux Kickstart无人值守安装 在我们的网络维护生涯中,有不少朋友,感觉到自己在机械的做一件事情,在无聊、无趣和无奈中工作。尤其一些简单重复的操作更容易让大家感到工作的无趣。今天将给大家介绍如何大规模的部署RedHat Linux操作系统,避免了手工安装的繁琐。当然本方法也使用于一些特殊场合,譬如没有光驱或光驱坏掉的计算机、手中没有安装光盘等情况。在安装RedHa转载 2011-12-02 14:20:11 · 1122 阅读 · 0 评论 -
linux静态库和动态库分析
1.什么是库 在windows平台和linux平台下都大量存在着库。 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。 由于windows和linux的本质不同,因此二者库的二进制是不兼容的。 本文仅限于介绍linux下的库。 2.库的种类 linux下的库有两种:静态库和共享库(动态库)。 二者的不同点在于代码被载入的时刻不同。转载 2011-12-12 14:14:01 · 564 阅读 · 0 评论 -
redhat server 5.4 64 bit 下安装 RealTek RTL8111E 网卡
安装linux时就提示dhcp找不到ip, 直接配了静态IP跳过。用/etc/init.d/network restart启动时就提示:bringing up interface eth0: r8169: eth0: unknown chipset (mac_version=1)貌似网卡没驱动, 下载安装网卡驱动 r8168-8.026.00.tar:打开终原创 2011-12-12 16:55:09 · 2357 阅读 · 0 评论 -
SVN主机搬移后Client端的的处理方式(relocate)
當 svn 主機 IP 更動,或者更換網址,底下 Client 端的工作版本就無法依據之前的 Check out 網址更新,以下針對在 Windows 的 TortoisesSVN 以及 Linux 底下的 svn 分別說明實際處理方式.1 Windows 的 TortoisesSVN這部份很簡單,直接選用 TortoisesSVN 選單內的 Relocate 來更改2 Linux 的转载 2011-12-21 10:53:42 · 1158 阅读 · 0 评论 -
linux 查看即时网速 /流量
查看流量 watch -n 1 "/sbin/ifconfig eth0 | grep bytes"终端下网速监测工具 -- SpeedometerSpeedometer 可以同时检测多个网络接口、文件,并在一起显示出来,只要你的屏幕够大~ Speedmeter 的主页: http://excess.org/speedometer/ ./speedometer.py -t原创 2011-12-14 15:19:39 · 32337 阅读 · 0 评论 -
Amazon EC2 Compute Unit性能评测
使用以下命令测试CPU性能:time echo "scale=5000; 4*a(1)" | bc -l -qIntel(R) Core(TM) i5-2300 CPU @ 2.80GHzcpu MHz : 2884.687cache size : 6144 KBreal 0m22.797suser 0m22.787ssys原创 2011-12-14 14:11:11 · 3113 阅读 · 0 评论 -
Linux下监测经过网卡的每秒的流量和数据包个数
http://bbs.linuxtone.org/thread-10031-1-1.htmlLinux 查看网卡流量: http://hi.baidu.com/eagoo/blog/item/34c987ef899d0be6cf1b3e5a.html实时查看Linux网卡流量Shell脚本: http://hi.baidu.com/chenshake/blog/item/223eb转载 2011-12-16 17:52:51 · 4914 阅读 · 1 评论 -
Source Insight配置和使用技巧大全
1、背景色选择 要改变背景色Options->preference->windows background->color设置背景色2、解决字符等宽对齐问题。 SIS默认字体是VERDANA,很漂亮。这网页上应该也是用的VERDANA字体。但由于美观的缘故,VERDANA字体是不等宽的。比如下面两行 llllllllll MMMMMMMMMM转载 2012-01-06 17:12:38 · 911 阅读 · 0 评论 -
Tomcat高并发配置
java 环境配置:export JAVA_OPTS="-server -Xms8g -Xmx8g -Xss128k -XX:ParallelGCThreads=20-XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:SurvivorRatio=8-XX:TargetSurvivorRatio=90 -XX:MaxTenur转载 2012-02-01 16:19:30 · 748 阅读 · 0 评论 -
Linux下tomcat的catalina.out文件过大,以及目录更改解决办法
方法1—分割流 使用cronolog工具切分Tomcat的catalina.out日志文件 cronolog一个对日志切分的小工具,其主页在http://cronolog.org/,我们也可以用它来切分Apache的日志。推荐用此方法,方法如下先google一下.cronolog-1.6.2.tar.gz1.下载cronolog-1.6.2.tar.gz2.安装转载 2012-02-01 16:21:48 · 4838 阅读 · 0 评论 -
Linux服务器日常运维命令
系统连接状态篇:1.查看TCP连接状态netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn netstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}' 或netstat -n | awk '/^tcp/ {++state[$NF]}; END {fo转载 2012-02-01 16:17:24 · 1110 阅读 · 1 评论 -
Linux 性能监测
看了某某教程、读了某某手册,按照要求改改某些设置、系统设定、内核参数就认为做到系统优化的想法很傻很天真:)系统优化是一项复杂、繁琐、长期的工作,优化前需要监测、采集、测试、评估,优化后也需要测试、采集、评估、监测,而且是一个长期和持续的过程,不是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书本上的优化就适合眼下正在运行的系统,不同的系统、不同的硬件、不同的应用优化的重点也不同、优化的方法也转载 2012-02-01 16:54:08 · 777 阅读 · 0 评论 -
Unix/Linux 的 Load 初级解释
网址: http://www.dbanotes.net/arch/unix_linux_load.htmlhttp://www.yiihsia.com/2011/03/%E7%90%86%E8%A7%A3linux%E4%B8%AD%E7%9A%84cpu%E8%B4%9F%E8%BD%BD/几乎每个接触类 Unix 操作系统的工程师都知道如何查看系统负载。但这东西的工转载 2011-12-13 17:10:09 · 849 阅读 · 0 评论 -
Linux下用tc控制网络延时和丢包率 流量控制
linux下的tc可以操纵网络,比如分配带宽给不同的应用、模拟网络时延、模拟糟糕网络环境下的丢包等。tc中间需要用一个路由器。使用 tc 当中间的路由器,来接二个网卡,然后打开路由功能来测试。于是我们拿一台linux机当router,单网卡,两个虚拟ip,让它连接两台服务器再试。更滑稽了,tc不起作用,两台服务器间的流量刷刷的走,tc却显示没有多少packet经过。tc不能用于router转载 2011-12-29 21:12:31 · 9595 阅读 · 0 评论 -
Linux进程守护者: 进程监视及自动重启崩溃的进程
Monit是一款功能非常丰富的进程、文件、目录和设备的监测软件,用于Unix平台。它可以自动修复那些已经停止运作的程序,特使适合处理那些由于多种原因导致的软件错误。对你的网站来说,让你的 Apache,MySQL和类似的进程一直处于运行状态至关重要。有几个很好的工具,例如 Monit 和 God,可以帮助你确保你的进程一直处于运行状态。通过检查进程的响应性,打开的端原创 2012-02-03 20:07:04 · 5000 阅读 · 0 评论 -
awk用法及一个小应用,统计socket连接数量及状态
netstat -an|awk '/^tcp/ {++S[$NF]} END {for(a in S ) print a,S[a]}'-------------------------------------------------------------------- awk 使用方法 ----------------转载 2011-12-31 14:08:05 · 1340 阅读 · 0 评论 -
Sed修改文件中的某一行
把file中的"#define MAX_TRACE_LEN 128" 改为 "#define MAX_TRACE_LEN 2048"mv -f file file.bakcat file.bak | sed -e "s/#define.*MAX_TRACE_LEN.*/#define MAX_TRACE_LEN 2048/" > filetouch file -r file.原创 2012-02-08 16:10:20 · 10469 阅读 · 0 评论 -
ppk和pem文件互转
ppk -> pemPuTTY format private key file (.ppk) to OpenSSH (.pem)pem key其实就是openssh的keyDownload PuttyGenClick on LoadBrowse to your .ppk fileEnter the passwordClick on Conversions原创 2012-02-24 15:41:19 · 17406 阅读 · 1 评论 -
如何将定制的ec2 监控报表放到 aws cloudwatch 上
You can use a simple shell script with cron on EC2 node to collect and report memory utilization to CloudWatch as custom metrics.First, you will need to get and configure CloudWatch command line转载 2012-02-08 16:29:57 · 2548 阅读 · 0 评论 -
Linux启动过程详解
随着Linux的应用日益广泛,特别是在网络应用方面,有大量的网络服务器使用Linux操作系统。由于Linux的桌面应用和Windows相比还有一定的差距,所以在企业应用中往往是Linux和Windows操作系统共存形成异构网络。在服务器端大多使用Linux和Unix的,目前Linux的擅长应用领域是单一应用的基础服务器应用,譬如DNS和DHCP服务器、Web服务器、目录服务器、防火墙、文件和打印服转载 2012-01-16 09:42:48 · 859 阅读 · 0 评论 -
Linux Shell中判断某个环境变量是否存在以及获取某个环境变量的值
Shell中判断某个环境变量是否存在以及获取某个环境变量的值#!/bin/bash if [ $TOMCAT_HOME ]; then echo "not found " else tar xvf /home/a.tar fiecho $TMPPATH #直接用'#'+环境变量名在shell中使用原创 2012-02-08 17:14:11 · 41090 阅读 · 2 评论 -
在linux关机时执行某个脚本
这几天接到一个任务,通过一台链接UPS低地位自动关机功能的linux系统,触发其他系统自动关机。昨天研究了一天,终于实现linux在关机或重启的时候执行某个任务。 现在把实现过程描述如下: 先写一个脚本放在/etc/rc.d/init.d下,chmod -f 777 , 再ln -s 到 /etc/rc.d/rc0.d/K01脚本名 与 /etc/rc.d/rc6.d/K0转载 2012-03-14 16:44:28 · 12317 阅读 · 0 评论