自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

转载 gdb时发出SIGTRAP信号的处理

在大多数系统,gdb对使用fork创建的进程没有进行特别的支持。当父进程使用fork创建子进程,gdb仍然只会调试父进程,而子进程没有得到控制和调试。这个时候,如果你在子进程执行到的代码中设置了断点,那么当子进程执行到这个断点的时候,会产生一个SIGTRAP的信号,如果没有对此信号进行捕捉处理,就会按默认的处理方式处理——终止进程。 当然,你可以使用时间延迟的方法,在子进程fork出来之后

2016-03-02 10:40:12 26097

原创 oracle 11g归档日志研究_4

change的内容,是oracle日志转化为SQL语句的核心,也是最麻烦,变化最多的地方。先说opcode,opcode的含义网上随便一搜有很多,真正对我有用的,只有增删改,至于什么搜索、索引等操作,我根本就不关心。5.1:包含信息较多,每个增删改一定对应一个有效的5.1,这个5.1中将包含原始数据,用来在回滚(undo)时使用。另外还会有大量的5.1操作,目前我并不理解其他5.1

2016-02-28 11:07:12 582

原创 oracle 11g归档日志研究_3

记录头(record head)格式:typedef struct rh0 { uint32_t recordlen; uint8_t VLD; //直接决定整个record head大小 uint8_t unknown0; uint16_t rhscnwrapper; uint32_t rhscnbase; uint16_t su

2016-02-28 10:56:54 534

原创 oracle 11g归档日志研究_2

从第3块开始,块里面存储着oracle的所有操作记录。块结构很简单,只有块头和块体:typedef struct bk { Redo_bh blockhead; uint8_t buf[496];}Redo_bk;块头与上一篇介绍过的一致:typedef struct bh { uint32_t signature; //签名 uint32

2016-02-28 10:54:44 578

原创 oracle 11g归档日志研究_1

oracle的数据库操作都会被记录在redo log中,用来进行undo(回滚)或在数据库异常的时候redo(重做)。redo log又分为online(在线日志)和archive(归档日志)两部分。oracle默认有3个在线日志文件,通常它们是按顺序写满一个再写下一个,而写满的在线日志文件会被整理为归档日志。在每个在线日志内部,可能按顺序或随机填写数据。 在线日志和归档日

2016-02-28 10:51:44 1026

原创 分享自己写的一个简化版LOG输出宏

extern int verbose;#define DBG(...) XLOG(4, "DBG", __VA_ARGS__)#define INFO(...) XLOG(3, "INF", __VA_ARGS__)#define WRN(...) XLOG(2, "WRN", __VA_ARGS__)#define ERR(...) XLOG(1, "ERR", __VA_ARGS__

2016-02-28 10:48:45 306

原创 socket编程:字节序

接触到socket编程,就一定会接触字节序转换。对于字符串来说,是没有字节序的差别的,就像我们写字,内存就像是纸,字符串就从左向右依次写:内存地址:00000000 00000001 00000002 00000003 ...内存数据:     'A'            'B'            'C'            'D'而任何cpu读取的时候,也

2016-02-28 10:45:46 570 1

转载 用openssl生成SSL使用的私钥和证书,并自己做CA签名

本文记叙的是一次基于SSL的socket通讯程序开发中,有关证书,签名,身份验证相关的步骤。 我们的场景下,socket服务端是java语言编写的,客户端是c语言。使用了一个叫做matrixssl的c语言库。自己做CA签名,不等同于“自签名”。 自签名的情况,RSA的公钥私钥只有一对,用私钥对公钥证书做签名。而我们的场景是,自己做CA,有一个CA的公钥私钥对。 而socket的服务端也有一个公

2015-02-27 15:23:21 2088

转载 rsync快速删除海量文件

Linux 快速删除大量小文件方法    当我们在linux系统中要删除数万或者数十万甚至数百万的文件时使用rm -rf *就不太好用,因为要等待很长一段时间。在这种情况之下我们可以使用linux系统命令rsync来巧妙的处理。rsync实际上用的是替换原理,处理数十万个文件也是秒删。    1. rsync安装,有些系统默认安装有该命令ubuntu系统:sudo apt-ge

2015-01-07 09:06:13 367

转载 TCP_NODELAY, SO_KEEPALIVE, SO_LINGER

#include #include if(setsockopt(sd, IPPROTO_TCP, TCP_NODELAY, (void *) &option, sizeof (option)) == -1) {    WRN("setsockopt[TCP_NODELAY]:%s", strerror(errno));}

2014-12-10 17:06:58 729

转载 信号量

1POSIX 信号量

2014-09-01 14:15:39 236

转载 shell+tar 自解压脚本

1 #!/bin/bash  2 preline=11  3 echo $0  4 line=`wc -l $0|awk '{print $1}'`  5 line=`expr $line - $preline`  6 echo "line = $line"  7 #tail -n $line $0 |tar zx -C ./  8 cd /root/topserver

2014-09-01 10:23:28 771

空空如也

空空如也

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

TA关注的人

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