自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(35)
  • 收藏
  • 关注

原创 GCC升级到4.8之后,gdb调试No symbol "XXXXX" in current context问题

将GCC升级到4.8之后,使用旧版本的gdb,在调试时会出现以下2个问题:1.  编译选项设为-g -O0,但是cgdb进去时不在main函数入口处。2. 提示No symbol "XXXXX" in current context以上问题是由于GCC 4.8使用dwarf4(gcc.gnu.org/gcc-4.8/changes.html),而GDB不识别。解决方法有2种:1

2016-05-04 17:24:03 1137

原创 gdb/cgdb调试库函数

1. 编译库文件时,加入了-g选项2. 启动gdb/cgdb时,将源码所在目录加入gdb搜索路径      gdb -d DIR 或 gdb --directory=DIR以调试berkeleyDB为例,bdb库的源码目录为:**/db_version/src3. 或者在启动gdb/cgdb后,用dir命令加入源码所在目录      dir DIR

2015-06-15 17:22:00 1557

转载 Linux Page Cache机制

本文转载自Linux Cache 机制探究经过研究了下Linux相关代码,把对Linux Cache实现的方式做一些总结。相关源码主要在:./fs/fscache/cache.c    Cache实现的代码./mm/slab.c                   SLAB管理器代码./mm/swap.c                缓存替换算法代码./mm/mmap

2015-06-05 21:56:46 14162

原创 Linux lftp测试问题

1. 客户端安装lftp,服务器端安装

2014-06-04 19:58:35 4330

原创 Aspera Server端设置

Aspera是一款商用远程文件传输工具,Client端和Server端都需要做一定的配置。下面先介绍CentOS下Aspera Server端的配置步骤:1. 安装Aspera Server,RPM包可以从其官网下载。2. 安装license。用Aspera的license文件覆盖原有的aspera-license文件cp license-file /opt/aspera/etc/

2014-06-04 19:58:07 7582 1

转载 Google File System中文翻译

Google文件系统 GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。 1、设计概览 (1)设计想定 GFS与过去的分布式文件系统有很多相同的目标,但GFS的设计受到了当前及预期的应用方面的工作量及技术环境的驱动,这反映了它与早期的文件系统明显不同的设想。这就

2014-05-09 09:41:35 594

转载 MapReduce中文翻译

MapReduce:超大机群上的简单数据处理                                           摘要MapReduce是一个编程模型,和处理,产生大数据集的相关实现.用户指定一个map函数处理一个key/value对,从而产生中间的key/value对集.然后再指定一个reduce函数合并所有的具有相同中间key的中间value.下面将列举

2014-05-09 09:40:20 990

转载 Redis作者:深度剖析Redis持久化

Redis是一种面向“key-value”类型数据的分布式NoSQL数据库系统,具有高性能、持久存储、适应高并发应用场景等优势。它虽然起步较晚,但发展却十分迅速。 近日,Redis的作者在博客中写到,他看到的所有针对Redis的讨论中,对Redis持久化的误解是最大的,于是他写了一篇长文来对Redis的持久化进行了系统性的论述。文章主要包含三个方面:Redis持久化是如何工作的、这一性能是

2014-04-30 09:56:29 599

原创 SanDisk ULLtraDIMM技术

SanDisk的ULLtraDIMM技术,将SSD通过标准的DIMM链接到内存通道上,

2014-04-26 15:20:47 962

原创 Latex使用技巧-论文排版

1. 设置paper尺寸为US Letter Portrait (8.5 x 11 in).    ACM的sig-alternate.cls并没有设置page size。如果希望将paper尺寸设置为8.5 x 11 in,在Latex中添加如下命令:% Set letter paper size:\setlength{\paperheight}{11in}\setlength{

2014-03-28 09:43:16 2442

原创 CentOS 6.2上安装cgdb

1. 安装readline, 默认安装目录为/usr/local/lib2. 安装cgdb     说明:如果执行./configure时,提示 configure: error: CGDB requires GNU readline 5.1 or greater to link. 以及出现 configure: error: cgdb needs ncurses/curses to

2013-07-12 16:56:27 4149

转载 vim查找与替换

语法为:[addr]s/源字符串/目的字符串/[option][addr] 表示检索范围,省略时表示当前行。如:“1,20” :表示从第1行到20行;“%” :表示整个文件,同“1,$”;“. ,$” :从当前行到文件尾;2.1,简单替换表达式替换命令可以在全文中用一个单词替换另一个单词::%s/four/4/g最后的 “g” 标记表示替换行中的所有匹配点。如果

2013-04-19 08:36:48 656

原创 vim配置及修改vim颜色

1. vim中,默认的终端目录颜色和vim的注释颜色均为蓝色,在黑色背景下,对比不明显,看不清楚。(1). 修改终端目录颜色拷贝/etc/DIR_COLORS文件为当前主目录的 .dir_colorscp /etc/DIR_COLORS ~/.dir_colors2)修改~/.dir_colors中DIR对应的颜色vim ~/.dir_colors将:DIR 01;34(0

2013-04-18 08:59:21 7151

转载 linux tar加压、解压命令

tar [-cxtzvpPf] 文件与目录 ...参数:-c :建立一个压缩文件的参数指令(create 的意思);-x :解开一个压缩文件的参数指令!-t :查看 tarfile 里面的文件!特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?-j

2013-04-17 21:01:31 2354

原创 C++虚函数、静态函数的作用

静态函数:1. 函数和变量,声明为静态,在类定义的时候分配了内存空间,存放在静态区,可以被类的多个对象公用。而类中非静态函数和变量,在类实例化时才分配内存空间,存放在栈中,被类的对象独占。2. 静态函数只能调用静态成员变量,不能调用非静态成员变量。3. 变量定义为静态,而被定义为全局变量,可以避免污染全局名字空间。Static关键字的详细说明,参考:C++中Static作用和使用方

2013-04-13 23:06:29 780

转载 linux下的dd命令详解

名称: dd 使用权限: 所有使用者dd 这个指令在 manual 里的定义是 convert and copy a file 使用方式: dd [option] 如果你想要在线看 manual, 可以试试: dd --help 或是 info dd 如果你想要看看这个版本如何: dd --version 输入或输出 dd if=

2013-04-13 23:05:43 709

转载 linux打patch的方法

作为程序员,了解diff&patch命 令是非常必要的。比如说我们发现某个项目有bug代码,而自己又没有svn的提交权限,那么此时最合适的解决方法就是用diff命令做一个补丁发给项目成 员。项目成员通过patch命令可以立刻知道你的意图。有人会说直接传一个新文件不是更简单?不要忘了,一个patch文件尺寸更小传输更快,而且可以明 显的看到都做了哪些修改。保证当前目录是demo名录:

2013-04-13 22:51:03 888

转载 在CentOS上安装Git

CentOS的yum源中没有git,只能自己编译安装,现在记录下编译安装的内容,留给自己备忘。确保已安装了依赖的包yum install curl yum install curl-devel yum install zlib-devel yum install openssl-devel yum install perl yum install cpio yum instal

2013-04-02 15:27:13 709

原创 awk使用总结

1. awk命令格式      awk [options] 'scripts' file      命令选项为:              -F fs or --field-separator fs, 指定分隔符             -v var=value or --asign var=value, 给awk指定变量      awk脚本由模式和操作组成:pattern

2012-12-10 09:41:20 574

转载 Linux内核中ioremap映射的透彻理解

几乎每一种外设都是通过读写设备上的寄存器来进行的,通常包括控制寄存器、状态寄存器和数据寄存器三大类,外设的寄存器通常被连续地编址。根据CPU体系结构的不同,CPU对IO端口的编址方式有两种:  (1)I/O映射方式(I/O-mapped)  典型地,如X86处理器为外设专门实现了一个单独的地址空间,称为"I/O地址空间"或者"I/O端口空间",CPU通过专门的I/O指令(如X86的

2012-11-04 15:33:43 535

原创 理解内存SRAM、DRAM、SDRAM、DDR3、DDR4

SRAM:静态随机访问存储器      一个SRAM存储单元由4个晶体管和2个电阻器组成,利用晶体管的状态切换来存储数据,而不是电容器,因此读数据时不存在漏电问题,不需要刷新操作。但是由于SRAM需要的晶体管数多,因此成本高。DRAM:动态随机访问存储器     一个DRAM存储单元由1个晶体管和1个电容器组成,利用电容量存储电量的多少来存储数据,由于电容器存在漏电问题,因此需要定

2012-10-30 17:22:18 15843

原创 vim打开多个文件

没有打开vim时:          打开的文件上下窗口分布:  vim -o file1 file2          打开的文件左右窗口分布:  vim -O file1 file2已经打开了vim:         输入                    :open file         可以再打开一个文件,并且此时vim里会显示出file文件的内容。

2012-10-28 16:53:11 692

原创 在Linux内核中打印日志时间戳

在编译Linux内核,配置时:make menuconfig ---> Kernel hacking --> show timing information on printks  当选中这个选项后,启动内核,会在日志信息前面加上时间戳。从下面的输出可以看出,时间精确到微秒(us)。  如下:-----------------------------------------

2012-10-24 08:28:21 12829

原创 打印linux内核信息

1. 背景知识linux内核日志分为8个级别,其宏定义如下:#define KERN_EMERG    ""    /* system is unusable            */#define KERN_ALERT    ""    /* action must be taken immediately    */#define KERN_CRIT    ""

2012-10-23 09:53:48 2852

转载 CenOS内核编译

第一步:下载内核源码:      wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.29.tar.gz然后解压进入到解压后的目录   # tar -zxvf linux-2.6.29.tar.gz  # cd /usr/src/linux-2.6.29第二步:开始编译 清理以前的编译痕迹如果内核源码

2012-10-23 09:03:08 5115

转载 C语言文件的输入输出函数

C语言文件的输入输出函数       C语言提供了两类关于文件的函数。一类称做标准文件函数也称缓冲型文件函数, 这是ANSI标准定义的函数; 另一类叫非标准文件函数, 也称非缓冲型文件函数。这类函数最早公用于UNIX操作系统, 但现在MS-DOS3.0 以上版本的操作系统也可以使用。下面分别进行介绍。标准文件函数    标准文件函数主要包括文件的打开、关闭、读和写等函数。不象BAS

2012-10-21 10:34:13 6477

原创 C++虚函数、静态函数的作用

静态函数:1. 函数和变量,声明为静态,在类定义的时候分配了内存空间,存放在静态区,可以被类的多个对象公用。而类中非静态函数和变量,在类实例化时才分配内存空间,存放在栈中,被类的对象独占。2. 静态函数只能调用静态成员变量,不能调用非静态成员变量。3. 变量定义为静态,而被定义为全局变量,可以避免污染全局名字空间。Static关键字的详细说明,参考:C++中Static作用和使用方

2012-10-21 10:19:58 1014

原创 存储器层次结构

关于存储器层次结构的四个问题:Q1:一个块可以放在什么位置?Q2:如何查找一个块?Q3:当发生缺失时,应该替换哪个块?Q4:写操作时会发生什么?一、Cache的放置(映射规则)、查找、替换和写策略:1. 放置策略(映射规则):直接映射、全相联映射和组相联映射。2. 查找策略:Cache地址划分:标志字段(判断是否命中)+ 索引字段(选择组)+块内偏移(从块中选择需要

2012-10-21 10:05:48 478

转载 单用户模式启动 修改root密码

1、在启动后,通过grub系统引导管理器,选择单用户登陆2、进入系统后,在命令行中输入 init 1  然后回车以grub 系统引导管理器,单用户登录方法在grub 启动后,反复按上下箭头 (注意,此时鼠标要定位在此ctrl+g,不然会不起作用)移动键盘到Linux的启动项;1、按e键;2、然后再通过上下箭头移动键盘到类似下面的一行,也就是kernel的那行:ker

2012-09-18 21:25:09 1367

原创 CentOS上安装Xen虚拟机

1.安装 Xenyum -y install xen kernel-xen xen-lib virt-manager python-virtinstkernel-xen:可以跑 Xen 的 Linux 核心xen:主要的 xen 套件,包括配置文件、启动脚本和一些函数库xen-libs:Xen 所需要的函数库python-virtinst:提供终端安装的软件virt-man

2012-09-04 11:28:07 652

转载 SPLASH2并行测试程序

SPLASH21992年,斯坦福大学推出了Stanford ParalleL Applications for SHared memory(SPLASH),1995年SPLASH第二版问世,被称为SPLASH-2。SPLASH-2使用C语言,由12个程序组成,使用PThread并行方式。SPLASH-2包含4个核心程序:Cholesky:用于将一个稀疏矩阵拆分成一个下三角矩阵和它的

2012-08-28 15:54:41 7226

原创 LaTex使用技巧2:添加中文支持

在LaTex中使用中文,需要添加支持中文的包。具体方法如下:1. 添加CJK中文包:       \usepackage{CJK}2. 开始中文环境,使用宋体,只有在这条命令之后才能使用中文:        \begin{CJK}{GBK}{song}3. 结束中文环境:        \end{CJK}      注:如果需要使用在文档中使用其他的字体,可以使用如

2012-08-21 09:07:24 29166

原创 LaTex使用技巧1:添加参考文献、PDF图片

在LaTex中使用BibTex添加参考文献方法如下:1. 在LaTex文档的\begin{document}下面设置参考文献类型,默认为plain。    \bibliographystyle{plain}2. 在需要引用处,标记引用。LaTex命令为:          \cite{引用文章名称}    注:可以通过JabRef,选中引用文章,右键,选择Copy \cite{

2012-08-21 08:50:56 37411

原创 Java Load Generator安装配置

1. 下载Java LoadGenerator源码:https://github.com/mikewied/Memcached-Java-Load-Client2. 编译loadgenerator:#antt3.编译loadgenerator使用的database,这里选择编译memcached:        #ant dbcompile-memcached4. Java Loa

2012-07-17 11:36:40 1222

转载 CentOS GCC升级

最近由于需求的原因,需要把目前gcc-4.4.4升级到gcc-4.6.1,考虑到有多台的原因,做了一个脚本自动安装结合批量工具分发。一、安装环境系统版本:centos6.0X64原GCC版本:gcc-4.4.4新GCC版本:gcc-4.6.1二、正式安装1、下载安装的源码:如下需要下载以下包:gcc-4.6.1.tar.bz2 gmp-4.3.2.tar.bz2 mpc

2012-07-07 21:16:45 844

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除