自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Hedpat's Blog | 黯風夜隱

收集学习各种技术,偶发妙想,闲来之时杂记,以逸闲情。

  • 博客(125)
  • 资源 (8)
  • 收藏
  • 关注

转载 linux I/O优化 磁盘读写参数设置

转载:http://wlservers.blog.163.com/blog/static/120622304201241715945256/关于页面缓存的信息,可以用cat /proc/meminfo看到。其中的Cached 指用于pagecache的内存大小(diskcache-SwapCache)。随着写入缓存页,Dirty 的值会增加。一旦开始把缓存页写入硬盘,Writeback的值会增加直到写入结束。Linux 用pdflush进程把数据从缓存页写入硬盘,查看有多少个pdflush进程.

2020-08-07 11:50:11 655

转载 GRPC 异步调用

protobuf原生的异步调用void DoneCallback(PingMessage *response) {}void async_test() { RpcClient client("127.0.0.1", 8000); PingService::Stub stub(client.Channel()); if (!client.init()) { printf(

2017-08-14 16:05:13 6528

转载 is-there-a-way-to-test-whether-a-c-class-has-a-default-constructor-other-than

http://stackoverflow.com/questions/2733377/is-there-a-way-to-test-whether-a-c-class-has-a-default-constructor-other-thanWorks on gcc-4.6#include template class T >struct identit

2016-07-06 18:51:09 501

转载 Linux cpuinfo

判断依据:1.具有相同core id的cpu是同一个core的超线程。2.具有相同physical id的cpu是同一颗cpu封装的线程或者cores。英文版:1.Physical id and core id are not necessarily consecutive but they are unique. Any cpu with the same cor

2016-05-30 18:24:30 386

转载 RPM打包详细说明

转  https://fedoraproject.org/wiki/How_to_create_an_RPM_package/zh-cnHow to create an RPM package/zh-cnHow to create an RPM packageIn other languages: العربية (ar) Deutsch (de) En

2016-05-29 19:57:39 1552

转载 Linux CPU调度相关

CFS(完全公平调度器)是Linux内核2.6.23版本开始采用的进程调度器,它的基本原理是这样的:设定一个调度周期(sched_latency_ns),目标是让每个进程在这个周期内至少有机会运行一次,换一种说法就是每个进程等待CPU的时间最长不超过这个调度周期;然后根据进程的数量,大家平分这个调度周期内的CPU使用权,由于进程的优先级即nice值不同,分割调度周期的时候要加权;每个进程的累计运行

2016-05-21 20:03:57 656

转载 TCP拥塞控制慢启动窗口设置

拥塞控制及慢启动通塞控制:Congestion Control简单的说,就是TCP传输过程中,为了避免一下子将网络冲爆,引入的机制。而慢启动,顾名思义,一开始慢慢传,发现没有问题,再增加传输速度。而一旦发现传输有超时,协议会认为网络拥堵,又降低传输速度。起始的传输速度,就是由初始拥塞窗口,initial congestion window,简称initcwnd参数控制的。ali

2016-05-21 19:52:48 4308

转载 JDBC useLocalSessionState

1.useLocalSessionState作用默认情况下,我们的连接串信息没有包含useLocalSessionState参数的设置,这个值默认为false。这个值的作用是驱动程序是否使用autocommit,read_only和transaction isolation的内部值(jdbc端的本地值)。如果设置为false,则需要这个判断这三个参数的场景,都需要发语句到远端请求,

2016-05-16 10:06:06 7351

转载 磁盘相关装载记录

fdisk可以通过fdisk -l列出所有的块设备及分区表#fdisk -l 2>/dev/null |grep "Disk"Disk /dev/sda: 4000.7 GB, 4000787030016 bytesDisk /dev/sdb: 4000.7 GB, 4000787030016 bytesDisk /dev/sdc: 4000.7 GB, 400078703001

2016-04-21 15:59:29 750

转载 How To Add Breakpad To Your Linux Application

How To Add Breakpad To Your Linux ApplicationThis document is an overview of using the Breakpad client libraries on Linux.Building the Breakpad librariesBreakpad provides an Autotools bu

2016-04-11 16:56:53 299

转载 crash-reporting/debugging-a-minidump

Table of Contents目录1 Table of Contents2 Use minidump_stackwalk to show a stack trace3 Use gdb to show a backtrace3.1 Generate core file3.2 Calculate address for sym

2016-04-11 16:54:31 646

原创 readelf symbols每列含义

readelf --symbols xxxxxx Num: Value Size Type Bind Vis Ndx NameNum: = The symbol numberValue = The address of the SymbolSize = The size of the symbolType =

2016-03-28 18:20:10 2596

原创 Linux 地址定义

/* Protocol families.  */#define PF_UNSPEC 0 /* Unspecified.  */#define PF_LOCAL  1 /* Local to host (pipes and file-domain).  */#define PF_UNIX   PF_LOCAL /* POSIX name for PF_LOCAL.  */#defi

2016-03-02 12:07:17 411

转载 linux中的网络地址结构记录

通用的地址结构sockaddr123456struct sockaddr{    sa_family_t sa_familiy;              /* address family */    char sa_data[];                         

2016-03-02 11:05:48 476

转载 Linux TCP队列相关参数的总结

在Linux上做网络应用的性能优化时,一般都会对TCP相关的内核参数进行调节,特别是和缓冲、队列有关的参数。网上搜到的文章会告诉你需要修改哪些参数,但我们经常是知其然而不知其所以然,每次照抄过来后,可能很快就忘记或混淆了它们的含义。本文尝试总结TCP队列缓冲相关的内核参数,从协议栈的角度梳理它们,希望可以更容易的理解和记忆。注意,本文内容均来源于参考文档,没有去读相关的内核源码做验证,不能

2016-02-19 09:56:33 894

转载 Linux errno

#define EPERM 1 /* Operation not permitted */  #define ENOENT 2 /* No such file or directory */  #define ESRCH 3 /* No such process */  #define EINTR 4 /* Interrupted system call */  #define E

2016-02-18 09:57:38 333

转载 NTP服务及时间同步(CentOS6.x)

今有一小型项目,完全自主弄,原来以为很简单的NTP服务,我给折腾了2个多小时才整撑头(以前都是运维搞,没太注意,所以这技术的东西,在简单都需要亲尝啊),这里记录为以后别再浪费时间。     目标环境,5台linux centos 6.3, 一台作为NTPD服务与外部公共NTP服务同步时间,同时作为内网的NTPD服务器,其他机器与这台服务做时间同步。 服务器I

2016-02-01 15:19:16 1349

转载 Linux(Unix)时钟同步ntpd服务配置方法

假定时钟服务器IP地址为:192.168.0.1服务器端配置:1:置/etc/ntp.conf文件内容为:server 127.127.1.0 minpoll 4fudge 127.127.1.0 stratum 1restrict 127.0.0.1restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap

2016-02-01 15:18:28 601

转载 解决ntp的错误 no server suitable for synchronization found

错误1.Server dropped: Strata too high在ntp客户端运行ntpdate serverIP,出现no server suitable for synchronization found的错误。在ntp客户端用ntpdate –d serverIP查看,发现有“Server dropped: strata too high”的错误,并且显示“stratu

2016-02-01 15:17:25 944

转载 exit()与_exit()函数的区别

注:exit()就是退出,传入的参数是程序退出时的状态码,0表示正常退出,其他表示非正常退出,一般都用-1或者1,标准C里有EXIT_SUCCESS和EXIT_FAILURE两个宏,用exit(EXIT_SUCCESS);可读性比较好一点。作为系统调用而言,_exit和exit是一对孪生兄弟,它们究竟相似到什么程度,我们可以从Linux的源码中找到答案:#def

2016-02-01 11:58:36 374

转载 rpmbuild spec 说明

update log:2010.01.08 加入SPEC文件中的宏定义和变量2010.01.08 关键字说明,如何在升级过程中不覆盖配置文件    上一篇日志写到,为什么要制作rpm包,以及如何使用.src.rpm文件生成rpm包。最后部分还看到.src.rpm的内容,实际上 就是由.tar.gz源码、补丁软件和.spec脚本组成的。由此知道,使用.spec生成rpm包是比较简

2016-01-26 20:11:41 337

转载 LLVM

原文链接:http://adriansampson.net/blog/llvm.html作者:Adrian Sampson译者:张洵恺只要你和程序打交道,了解编译器架构就会令你受益无穷——无论是分析程序效率,还是模拟新的处理器和操作系统。通过本文介绍,即使你对编译器原本一知半解,也能开始用LLVM,来完成有意思的工作。LLVM是什么?LLVM是一个好用、好玩,而且超

2016-01-24 13:48:39 629

转载 结构化编译器前端 Clang 介绍

背景与概览Low Level Virtual Machine (LLVM) 是一个开源的编译器架构,它已经被成功应用到多个应用领域。Clang ( 发音为 /klæŋ/) 是 LLVM 的一个编译器前端,它目前支持 C, C++, Objective-C 以及 Objective-C++ 等编程语言。Clang 对源程序进行词法分析和语义分析,并将分析结果转换为 Abstract Syntax

2016-01-24 13:42:01 796

转载 CPU

从1980年代以来,CPU有哪些新变化?这些变化又是如何影响程序员的?本文将会为你解答这些问题。原文链接:http://danluu.com/new-cpu-features/ 作者:Dan Luu有人在Twitter上谈到了自己对CPU的认识:我记忆中的CPU模型还停留在上世纪80年代:一个能做算术、逻辑、移位和位操作,可以加载,并把信息存储在记忆体中的盒子。我隐

2016-01-24 13:24:35 638

转载 C++ 标准库的 locale 类用法

原来一篇总结了下 C 标准库的 setlocale() 用法,这篇讲解的是 C++ 标准库中 locale 类的用法。参考:cplusplus.com 上关于标准 C++ 中国际化支持的参考:Localization libraryLocale classThe C++ Standard Library(Nicolai M. Josuttis,侯捷译)第 14 章

2016-01-21 13:44:51 748

转载 Linux中的线程局部存储

转载请说明出处:http://blog.csdn.net/cywosp/article/details/26469435   在Linux系统中使用C/C++进行多线程编程时,我们遇到最多的就是对同一变量的多线程读写问题,大多情况下遇到这类问题都是通过锁机制来处理,但这对程序的性能带来了很大的影响,当然对于那些系统原生支持原子操作的数据类型来说,我们可以使用原子操作来处理,这能对程

2016-01-19 15:04:52 329

转载 malloc、calloc、realloc的区别

(1)C语言跟内存分配方式从静态存储区域分配.       内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、static变量.在栈上创建       在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放.栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限.从堆上分配,亦称动态

2016-01-19 14:49:57 380

原创 使用valgrind排查Linux进程启动占用内存分布情况

采集数据valgrind --tool=massif   ./test                                                检测栈上内存valgrind --tool=massif --pages-as-heap=yes  ./test         把pages上内存影射到栈上valgrind --tool=callgrind  ./t

2016-01-19 13:46:13 1676

原创 Jar包冲突解决方法

mvn dependency:tree -Dverbose -Dincludes=:

2016-01-11 18:22:14 366

转载 Built-in functions for atomic memory access

The following builtins are intended to be compatible with those described in the Intel Itanium Processor-specific Application Binary Interface, section 7.4. As such, they depart from the normal GCC

2016-01-11 12:18:06 283

转载 Multithreaded simple data type access and atomic variables

ntroductionBACK TO TOCIn this article I would like to continue subject I started in my previous two posts (post 1 and post2). Question I am trying to answer is what is the most efficient, yet sa

2016-01-11 12:11:54 766

转载 #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)

#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)先分析一下这个 宏的运行机理:一共4步 1. ( (TYPE *)0 ) 将零转型为TYPE类型指针; 2. ((TYPE *)0)->MEMBER 访问结构中的数据成员; 3. &( ( (TYPE *)0 )->MEMBER )取出数据成员的地址; 这

2016-01-11 11:59:15 718

转载 深入分析C++引用

关于引用和指针的区别的文章很多很多,但是总是找不到他们的根本区别,偶然在codeproject上看到这篇文章,觉得讲的挺好的,所以翻译了下,希望对大家有帮助。原文地址: http://www.codeproject.com/KB/cpp/References_in_c__.aspx 引言      我选择写 C++ 中的引用是因为我感觉大多数人误解了引用。而我之所以有这个感受是

2016-01-11 07:25:21 307

转载 mallopt函数说明

mallopt - set memory allocation parameters #include int mallopt(int param, int value); The mallopt() function adjusts parameters that control the behav

2016-01-10 16:31:59 2276

转载 关于-fno-omit-frame-pointer与-fomit-frame-pointer

在GDB core的时候,经常去查看EBP,ESP寄存器,来查找一些有用的调用信息,但是感觉这个EBP,ESP中值的变化,并不是像书中描述的那种函数调用的标准流程。在用perf做性能分析,打印函数的调用路径时,打印调用路径也有问题。后来才清楚,原来是-fno-omit-frame-pointer这个优化导致的问题。下面以一个实例来说明:#include int ad

2015-12-22 15:16:33 6454

转载 gettimeofday优化

转载:http://www.trueeyu.com/?p=17801.介绍:    很多应用(数据库)频繁执行gettimeofday或是其它类似的函数调用,优化这此函数可以提升性能。    Virtual Dynamic Shared Object(VDSO),是一个允许应用在用户空间执行一些kernel活动(不需要通过系统调用),VDSO可以加速gettim

2015-12-18 20:09:05 876

转载 sysbench安装、使用、结果解读

http://imysql.com/2014/10/17/sysbench-full-user-manual.shtmlsysbench安装、使用、结果解读4条回复sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。目前sysbench代码托管在launchpad上,项目地址:https://launc

2015-12-17 21:34:07 527

转载 configure.ac

configure.ac (sometimes also named: configure.in) is an input file for autoconf. It contains tests that check for conditions that are likely to differ on different platforms. The tests are made by a

2015-11-18 14:45:05 372

转载 struct linger 用法

Linux下tcp连接断开的时候调用close()函数,有优雅断开和强制断开两种方式。那么如何设置断开连接的方式呢?是通过设置socket描述符一个linger结构体属性。linger结构体数据结构如下: #include struct linger {  int l_onoff;  int l_linger;}; 三种断开方式:1. l_onoff =

2015-10-04 13:56:53 343

转载 代码注释TODO FIXME XXX

TODO: + 说明:如果代码中有该标识,说明在标识处有功能代码待编写,待实现的功能在说明中会简略说明。FIXME: + 说明:如果代码中有该标识,说明标识处代码需要修正,甚至代码是错误的,不能工作,需要修复,如何修正会在说明中简略说明。XXX: + 说明:如果代码中有该标识,说明标识处代码虽然实现了功能,但是实现的方法有待商榷,希望将来能改进,要改进的地方会在说明中简

2015-09-13 14:15:08 344

IDA_v4.8 反汇编工具

IDA PRO简称IDA(Interactive Disassembler) ,是一个世界顶级的交互式反汇编工具,有两种可用版本。标准版(Standard)支持二十多种处理器。高级版(Advanced)支持50多种处理器。

2012-06-27

HTTPLook HTTP嗅探器

  HTTPLook 是一个 HTTP 的嗅探器,它能捕捉本机与其它任何主机的 HTTP 通讯,然后显示详细的 HTTP 操作(如 GET/POST)、访问资源的 URL 、字节数大小等,这个软件简单易用,不用对 Internet Explorer 做任何其它设置(有的软件通过在 IE 中设置代理来监控数据),也不需要其它任何软件的支持,是一款较为绿色的、轻量级的软件。

2012-06-27

Hiew 7.51 英文版 优秀的16进制编辑器

优秀的16进制编辑器Hiew,对静态反汇编出来的程序清单进行阅读。

2012-06-27

软件工具SoftICE的全部命令中文解说

SoftICE是Compuware NuMega公司的产品,是目前公认最好的系统级调试工具!兼容性和稳定性极好,可在源代码级调试各种应用程序和设备驱动程序,也可使用TCP/IP连接进行远程调试。ICE的含义

2012-06-27

瑞士军刀.rar

小巧而功能强大,在网络工具中有“瑞士军刀”的美誉. netcat可以作为类似于telent的客户端,也可以监听某个端口作为服务器,还可以作为扫描工具扫描对方主机的端口,还可以用来传输文件等.

2012-06-27

毕业论文相关附件

论文相关附件1-11,仅供提前做毕业论文准备的参考,模板和样式要求!

2012-06-27

华南理工大学-数据库课程设计(全套)

数据库课程设计的全套文档及代码,需要自己搭建MySql数据库,其中包括安装包,配置和使用说明,源代码;给需要参考的同学使用,仅供参考!

2012-06-27

空空如也

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

TA关注的人

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