linux Benchmark Tools

linux Benchmark Tools Benchmark Tools Phoronix Test Suite Comprehensive testing and benchmarking platform IOzone Filesystem benchmark tool that measures a wide variety of file operations netperf A network performance benchmark LLCbench Low Level Architectural Characterization Benchmark Suite HardInfo System Profiler and Benchmark GtkPerf GTK+ performance benchmark

2012-05-02 · 1 min · 46 words · -

Linux Testdisk

Linux Testdisk linux下超帅的分区表修复软件.以前用过n多的windows的分区表修复软件,没想到linux中有这么好用这么方便的修复软件,速度那叫一个快啊。。没有见到这个分区表修复软件以前我都白活了。。。。。 好了,这个软件叫testdisk.很帅的。。 如果你是使用修复光碟,就下载一个这个软件到电脑中,如果是恢复usb的disk直接 #sudo apt-get install testdisk 使用的话先sudo testdisk 1.选择Create来进行分析 Use arrow keys to select, then press Enter key: [ Create ] Create a new log file [ Append ] Append information to log file [ No Log ] Don’t record anything 2.然后选择testdisk中你要修复的硬盘,回车 Select a media (use Arrow keys, then press Enter): Disk /dev/sda - 160 GB / 149 GiB - ATA HITACHI HTS54251 Disk /dev/sdb - 3272 MB / 3121 MiB - SM324BC USB DISK 3.选择testdisk修复的平台,我们是Intel的,所以选择他 ...

2012-05-01 · 2 min · 331 words · -

debian wine frozen throne

debian wine frozen throne download source from http://www.winehq.org/download/ sudo apt-get install flex sudo apt-get install bison ./tools wine “Frozen Throne.exe” -opengl

2012-04-29 · 1 min · 21 words · -

wine

wine 卸载wine中已经安装的软件 到程序的目录里面 wine 卸载程序.exe wine,是一款优秀的Linux系统平台下的模拟器软件,用来将Windows系统下的软件在Linux系统下稳定运行,该软件更新频繁,日臻完善,可以运行许多大型Windows系统下的软件。另外英语单词wine是葡萄酒的意思。 刚刚步入Linux,难免要有时利用一下Windows的程序资源,Wine提供了一个用来运行Windows程序的平台。 Wine (Wine Is Not an Emulator)[即Wine不仅仅是一个模拟器]是一个在Linux和UNIX之上的,Windows 3.x 和 Windows APIs的实现.它是一个Windows兼容层,用通俗的话说,就是一个Windows模拟器,这个层既提供了一个用来从Windows源进出到UNIX的开发工具包(Winelib),也提供了一个程序加载器,该加载器允许不用任何修改Windows 3.1/95/NT的二进制文件,就可以运行在Intel Unix及其衍生版本下.Wine可以工作在绝大多数的UNIX版本下,包括Linux, FreeBSD, 和 Solaris. Wine不需要Microsoft Windows, 因为这是一个完全由百分之百的免费代码组成的,可以选择的实现,但是它却可以随意地使用本地系统的DLLs,如果它们是可以被利用的话.Wine的发布是完全公开源代码的,并且是免费发行的。 目前 Wine 仍在发展阶段,但是较新的版本可以运行一些著名软件,甚至是 Photoshop CS3! Wine的官方站点是http://www.winehq.com/,虽然你可以在它的官方站点下载源代码,自己配置编译,不过这个过程可是比较繁琐的!

2012-04-29 · 1 min · 31 words · -

Brasero

Brasero Brasero是类Unix系统下的一个自由的光盘刻录程序,作为cdrtools,growisofs以及libburn (可选) 的图形化前端 (使用GTK+) 。 Brasero是Ubuntu和Xubuntu的GNOME桌面下的默认CD/DVD应用程序。 Brasero使用GNU通用公共许可证,是一个自由软件。

2012-04-24 · 1 min · 8 words · -

fd, 文件描述符

fd, 文件描述符 查看系统级文件描述符/FD 限制 cat /proc/sys/fs/file-max sysctl -a | grep fs.file-max 查看 shell 级 fd 数 限制 # 用户 shell 里创建的进程的 fd 数限制 ulimit -a|grep 'open files' ulimit -Hn ulimit -Sn 查看某一运行中进程的 fd 限制 cat /proc/<PID>/limits |grep 'Max open files' 查看系统已经打开的文件数 cat /proc/sys/fs/file-nr 查看某一进程的打开文件数量 lsof -p <PID> | wc -l ls -l /proc/<PID>/fd |wc -l 文件描述符 (File descriptor) 是计算机科学中的一个术语,是一个用于表述指向文件的引用的抽象化概念。 文件描述符在形式上是一个非负整数。实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。在程序设计中,一些涉及底层的程序编写往往会围绕着文件描述符展开。但是文件描述符这一概念往往只适用于UNIX、Linux这样的操作系统。 FD 文件描述符 一、概念 Linux 系统中,把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程返回一个文件描述符,文件描述符就是内核为了高效管理已被打开的文件所创建的索引,用来指向被打开的文件,所有执行I/O操作的系统调用都会通过文件描述符。 二、文件描述符、文件、进程间的关系 1.描述: 我们可以通过linux的几个基本的I/O操作函数来理解什么是文件操作符。 fd = open(pathname, flags, mode) // 返回了该文件的fd rlen = read(fd, buf, count) // IO操作均需要传入该文件的fd值 wlen = write(fd, buf, count) status = close(fd) 每当进程用open()函数打开一个文件,内核便会返回该文件的文件操作符(一个非负的整形值),此后所有对该文件的操作,都会以返回的fd文件操作符为参数。【注1】 ...

2012-04-15 · 4 min · 779 words · -

linux shell Manipulating Strings

linux shell Manipulating Strings http://www.faqs.org/docs/abs/HTML/string-manipulation.html 连接字符串 a="abc" b="def" echo $a$b expr index $string $substring Numerical position in $string of first character in $substring that matches. 1 stringZ=abcABC123ABCabc 2 echo expr index "$stringZ" C12 # 6 3 # C position. 4 5 echo expr index "$stringZ" 1c # 3 6 # ‘c’ (in #3 position) matches before ‘1’. This is the near equivalent of _strchr()_ in C. **ength of Matching Substring at Beginning of String** expr match "$string" '$substring' : $substring is a [regular expression][1]. expr "$string" : '$substring' : $substring is a regular expression. 1 stringZ=abcABC123ABCabc 2 # |——| 3 4 echo expr match "$stringZ" 'abc[A-Z]*.2' # 8 5 echo expr "$stringZ" : 'abc[A-Z]*.2' # 8 ...

2012-04-08 · 1 min · 129 words · -

mplayer output driver

mplayer output driver Output drivers (directx, xv, x11, gl, alsa, oss…) what are they? Which one is the best? MPlayer has several output drivers, for video and sound. SMPlayer allows you to select the one you want among all of them (Preferences -> General -> Video/Audio). For video it’s recommended that you use xv (linux) or directx (windows). They use hardware acceleration and give the best performance. The inconvenience about directx for Windows Vista users is that it disables Aero. ...

2012-04-07 · 2 min · 223 words · -

linux下挂载kvm磁盘文件

linux下挂载kvm磁盘文件 宿主机Debian, 客户机winxp, 磁盘文件格式raw sudo mount -o loop,offset=32256 -t ntfs winxp.img /mnt http://stackoverflow.com/questions/8171179/kvm-virtual-machine-running-windows-xp-how-to-get-files-from-guest-to-host winxp.img and loop1 is not a single partition (which can be mounted), it is image of full hard disk with own partition table. You should read partition table from loop1 with fdisk; compute offset of first partition and do: sudo mount -o offset=N -t ntfs /dev/loop1 /home/robert/kvm/images/tmp where N is offset in bytes. Telepathic mode on N is 32256 Telepathic mode off ...

2012-04-07 · 1 min · 123 words · -

sed command

sed command commands # 把 foo 替换成 bar # linux echo 'abcfooabc' > file0 sed 's/foo/bar/' file0 echo 'abcfooabc'| sed 's/foo/bar/' # macos sed -i '' 's/foo/bar/' file0 发音:[sed] sed 全名叫 stream editor,流编辑器,sed 可以按照脚本的指令来处理文本文件。 简化对文件的反复操作、编写转换程序等 这里的脚本指的是 sed 脚本,如: 4anewline, ’s/hello/world/’ … 语法 sed SCRIPT INPUTFILE sed [-hnV][-e<script>][-f<script文件>][文本文件] 选项与参数 -i # 直接修改读取的文件内容, 而不是输出到终端. 不加 -i 参数的话默认输出到 STDOUT -f # 直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作; -r # sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法) -n # 使用安静(silent)模式。在一般 sed 的用法中, 所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。 -e script, --expression=script: sed -e 是可以在一行里执行多条命令, -e 参数用来显示的指定脚本位置, -e 和 -f 可以同时出现,也可以多次出现, 使用了 -e 之后,其它非选项字符串都被认为是输入。 sed -e 's/foo/bar/' -e 's/foobar/barfoo/' file0 删除包含指定字符的行 # 删除包含指定字符的行 sed -i '/localhost/d' /etc/hosts 截取文本段 https://blog.wiloon.com/?p=13845 ...

2012-04-07 · 3 min · 521 words · -

Golang 命名规范

Golang 命名规范 变量命名 和结构体类似,变量名称一般遵循驼峰法,首字母根据访问控制原则大写或者小写,但遇到特有名词时,需要遵循以下规则: 如果变量为私有,且特有名词为首个单词,则使用小写,如 appService; 若变量类型为 bool 类型,则名称应以 Has, Is, Can 或 Allow 开头。 var isExist bool var hasConflict bool var canManage bool https://zhuanlan.zhihu.com/p/216001587 golang 文件名 命名规则 project name: - package: lowercase file name: _ https://stackoverflow.com/questions/25161774/what-are-conventions-for-filenames-in-go https://golang.org/doc/effective_go.html#package-names

2012-04-07 · 1 min · 38 words · -

Linux命令pidof

Linux命令pidof Linux命令pidof - 找出正在运行程序的进程PID 本文链接: http://codingstandards.iteye.com/blog/841123 (转载请注明出处) 用途说明 pidof用于找出正在运行的程序的进程PID (find the process ID of a running program.) ,程序可以是一个二进制执行程序,也可以是一个shell脚本。如果是找出java程序的进程PID,pidof就无能为力了,可以使用ps -ef|grep java或jps -l来查看java进程的信息。通常找出进程PID的目的是确认程序是否在运行、或者为了把它杀掉、或者发送一个信号给它。 常用参数 格式: pidof program 找出program程序的进程PID,如果有多个就会全部列出,program不能是shell脚本名称。 格式: pidof -s program 找出program程序的进程PID,只列出一个。 (Single shot - this instructs the program to only return one pid.) 格式: pidof -x script 找出shell脚本script的进程PID。 参数: -o omitpid 参数: -o omitpid1 -o omitpid2 在列出的进程PID中忽略omitpid。可以有多个。 参数: -s 只列出一个。 使用示例 示例一 [root@smsgw root]# pidof pidof 24386 [root@smsgw root]# pidof console ...

2012-04-06 · 1 min · 165 words · -

no such file to load — mkmf

no such file to load — mkmf Building native extensions. This could take a while... ERROR: Error installing rails: ERROR: Failed to build gem native extension. /usr/bin/ruby1.8 extconf.rb extconf.rb:1:in \`require': no such file to load - mkmf (LoadError) from extconf.rb:1 For some reason, mkmf.rb is part of the ruby1.8-dev package, and initially I hadn’t installed that. #install ruby1.8-dev sudo apt-get install ruby1.8-dev and everything trotted along happily after that.

2012-04-04 · 1 min · 69 words · -

linux search

linux search whereis whereis命令只能用于程序名的搜索,而且只搜索二进制文件 (参数-b) 、man说明文件 (参数-m) 和源代码文件 (参数-s) 。如果省略参数,则返回所有信息。 whereis命令的使用实例: $ whereis grep which which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。 which命令的使用实例: $ which grep type type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。 type命令的使用实例: $ type cd 系统会提示,cd是shell的自带命令 (build-in) 。 $ type grep 系统会提示,grep是一个外部命令,并显示该命令的路径。 $ type -p grep 加上-p参数后,就相当于which命令。 locate locate命令其实是"find -name"的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库 (/var/lib/locatedb) ,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。 locate命令的使用实例: $ locate /etc/sh 搜索etc目录下所有以sh开头的文件。 $ locate ~/m 搜索用户主目录下,所有以m开头的文件。 $ locate -i ~/m 搜索用户主目录下,所有以m开头的文件,并且忽略大小写。 find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。 find的使用格式如下: $ find <指定目录> <指定条件> <指定动作> <指定目录>: 所要搜索的目录及其所有子目录。默认为当前目录。 <指定条件>: 所要搜索的文件的特征。 <指定动作>: 对搜索结果进行特定的处理。 ...

2012-04-04 · 1 min · 99 words · -

交叉编译

交叉编译, cross compile http://baike.baidu.com/view/650389.htm 交叉编译是在一个平台上生成另一个平台上的可执行代码。这里需要注意的是所谓 平台,实际上包含两个概念: 体系结构 (Architecture) 、操作系统 (Operating System) 。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。举例来说,我们常说的x86 Linux平台实际上是Intel x86体系结构和Linux for x86操作系统的统称;而x86 WinNT平台实际上是Intel x86体系结构和Windows NT for x86操作系统的简称。 一个经常会被问到的问题就是,“既然我们已经有了主机编译器,那为什么还要交叉编译呢?“其实答案很简单,没办法啊!有时是因为目的平台上不允许或不能够安装我们所需要的编译器,而我们又需要这个编译器的某些特征;有时是因为目的平台上的资源贫乏,无法运行我们所需要编译器;有时又是因为目的平台还没有建立,连操作系统都没有,根本谈不上运行什么编译器。 另一个经常会被问到的问题就是: “既然可以交叉编译,那还要主机编译干吗?“其实答案也很简单,交叉编译是不得已而为之!与主机编译相比,交叉编译受的限制更多,虽然在理论上我们可以做任何形式的交叉编译,但事实上,由于受到专利、版权、技术的限制,并不总是能够进行交叉编译,尤其是在业余条件下!举例来说,我们至今无法生成惠普公司专有的som格式的可执行文件,因此我们根本无法做目的平台为HPPA-HPUX的交叉编译。 就我们这个项目而言,需要交叉编译的原因有两个: 首先,在项目的起始阶段,目的平台尚未建立,因此需要做交叉编译,以生成我们所需要的bootloader (启动引导代码) 以及操作系统核心;其次,当目的平台能启动之后,由于目的平台上资源的限制,当我们编译大型程序时,依然可能需要用到交叉编译。 交叉编译这个概念的出现和流行是和嵌入式系统的广泛发展同步的。我们常用的计算机软件,都需要通过编译的方式,把使用高级计算机语言编写的代码 (比如C代码) 编译 (compile) 成计算机可以识别和执行的二进制代码。比如,我们在Windows平台上,可使用Visual C++开发环境,编写程序并编译成可执行程序。这种方式下,我们使用PC平台上的Windows工具开发针对Windows本身的可执行程序,这种编译过程称为native compilation,中文可理解为本机编译。然而,在进行嵌入式系统的开发时,运行程序的目标平台通常具有有限的存储空间和运算能力,比如常见的 ARM 平台,其一般的静态存储空间大概是16到32MB,而CPU的主频大概在100MHz到500MHz之间。这种情况下,在ARM平台上进行本机编译就不太可能了,这是因为一般的编译工具链 (compilation tool chain) 需要很大的存储空间,并需要很强的CPU运算能力。为了解决这个问题,交叉编译工具就应运而生了。通过交叉编译工具,我们就可以在CPU能力很强、存储空间足够的主机平台上 (比如PC上) 编译出针对其他平台的可执行程序。 要进行交叉编译,我们需要在主机平台上安装对应的交叉编译工具链 (cross compilation tool chain) ,然后用这个交叉编译工具链编译我们的源代码,最终生成可在目标平台上运行的代码。常见的交叉编译例子如下: 在Windows PC上,利用ADS (ARM 开发环境) ,使用armcc编译器,则可编译出针对ARM CPU的可执行代码。 在Linux PC上,利用arm-linux-gcc编译器,可编译出针对Linux ARM平台的可执行代码。 在Windows PC上,利用cygwin环境,运行arm-elf-gcc编译器,可编译出针对ARM CPU的可执行代码。 编辑本段 二、交叉编译的基础知识 在做实际工作之前,我想我们应该先掌握一些关于交叉编译的基本知识,其实说白了也就是理解一些我们经常会碰到的英文单词: 宿主机 (host) : 编辑和编译程序的平台,一般是基于X86的PC机,通常也被称为主机。 目标机 (target) : 用户开发的系统,通常都是非X86平台。host编译得到的可执行代码在target上运行。 ...

2012-04-03 · 1 min · 103 words · -

Linux下的DOS环境 (DOSEMU)

‘Linux下的DOS环境 (DOSEMU)’ 2007年09月05日 星期三 10:56 Linux下拥有一个DOS环境是一件非常有意思的事情,目前可行的方案有Dosemu、Vmware等等,根据个人爱好,我选择的是 DOSEMU,因为它搭建非常简单,而又十分好用。以下是整个的安装过程,最后还可以从网站上直接下载打好的包,解压在个人用户目录中即可直接使用。

2012-04-02 · 1 min · 7 words · -

FreeDOS USB Bootable Drive

FreeDOS USB Bootable Drive http://www.aselabs.com/articles.php?id=243 Author Aron Schatz Posted March 3, 2008 Views 61988 We all use flash drives instead of the older floppy disk standard of last century. The problem with USB is that it isn’t made to boot like a floppy disk. Motherboards now support booting from USB drives made to look like hard drives. This guide is a step by step process running on Ubuntu. Tags Guides USB DOS Boot ...

2012-04-02 · 8 min · 1552 words · -

linux test

linux test http://www.ibm.com/developerworks/cn/linux/l-bash-test.html 内置命令 test 根据表达式_expr_ 求值的结果返回 0 (真) 或 1 (假) 。也可以使用方括号: test expr 和 [ expr ] 是等价的。 可以用$? 检查返回值;可以使用 && 和 || 操作返回值;也可以用本技巧后面介绍的各种条件结构测试返回值。 -d 目录 -e 存在 (也可以用 -a) -f 普通文件 -h 符号连接 (也可以用 -L) -p 命名管道 -r 可读 -s 非空 -S socket -w 可写 -N 从上次读取之后已经做过修改 可以用 -eq、 -ne、-lt、 -le、 -gt 或 -ge 比较算术值,它们分别表示等于、不等于、小于、小于等于、大于、大于等于。

2012-04-01 · 1 min · 58 words · -

linux 格式化U盘

linux 格式化U盘 先卸载u盘 #umount /dev/sdb1 #注意/dev/后面的设备要根据你的实际情况而定 格式化并建立VFAT文件系统 #mkfs.vfat /dev/sdb1 最后再mount上就成了,或者把U盘拨了再插上,系统可能会自动mount上,就可以用U盘了

2012-03-29 · 1 min · 10 words · -

linux下制作dos启动U盘

linux下制作dos启动U盘 下载镜像文件win98usb.tar http://ubuntuforums.org/showthread.php?p=5459421#post5459421 查看U盘挂载点 df -h sudo dd if=win98usb.img of=/dev/sdb conv=notrunc unzip the package win98boot.zip mount the usb disk Copy the bootable ISO BIOS files to the USB stick sudo cp -r xxx xxx 编辑config.sys device=himem.sys /testmem:off himem.sys后面的/testmem:off的作用是HIMEM.SYS载入时不会慢慢检查内存

2012-03-29 · 1 min · 38 words · -