<为爱走天涯>

导航

2016年2月15日 #

给linux安全模块LSM添加可链式调用模块(一)

摘要: 前些日子接了个外包的活,了解了一下Linux安全模块,发现了安全模块中的一些问题。 关于linux安全模块LSM在此就不多说了,大家google下就明白了。 这里主要介绍的是如何修改这个模块,使它可链栈化。 关于LSM,旧版本的提供了register_security/mod_reg_securit 阅读全文

posted @ 2016-02-15 09:30 <为爱走天涯> 阅读(1594) 评论(0) 推荐(0) 编辑

2014年8月9日 #

经典的线程池--用户空间与内核空间实现的对比

摘要: 经典的线程池模型是一组线程抢一个资源链表的模型,程序启动了一组线程,让它们等待信号waitQ的到来。同时又初始化一个资源链表,当某个线程往资源链表中添加一个资源时,它同时使用信号通知线程池。线程池中的线程接到信号后,就从资源链表中取出资源进行处理。 接下来,我们先来观察一下用户空间线程池的创建... 阅读全文

posted @ 2014-08-09 15:04 <为爱走天涯> 阅读(781) 评论(0) 推荐(0) 编辑

2014年7月31日 #

glusterfs 中的字典查询

摘要: glusterfs文件系统是一个分布式的文件系统,但是与很多分布式文件系统不一样,它没有元数服务器,听说swift上也是应用了这个技术的。glusterfs中每个xlator的配置信息都是用dict进行管理的。dict这玩意儿,说白了就是一个hash表,是一个key/value的内存数据库。今天... 阅读全文

posted @ 2014-07-31 14:35 <为爱走天涯> 阅读(573) 评论(0) 推荐(0) 编辑

2014年7月7日 #

glusterfs 内存管理方式

摘要: glusterfs中的内存管理方式: 首先来看看glusterfs的内存管理结构吧: 1 struct mem_pool { 2 struct list_head list; 3 int hot_count; 4 int... 阅读全文

posted @ 2014-07-07 23:29 <为爱走天涯> 阅读(563) 评论(0) 推荐(0) 编辑

2013年8月16日 #

shell 脚本技巧

摘要: 1、Give ECHO colors see see!NORMAL=$(tput sgr0)GREEN=$(tput setaf 2; tput bold)YELLOW=$(tput setaf 3)RED=$(tput setaf 1)function red() { echo -e "$RED$*$NORMAL"}function green() { echo -e "$GREEN$*$NORMAL"}function yellow() { echo -e "$YELLOW$*$NORMAL"}# To print success 阅读全文

posted @ 2013-08-16 10:18 <为爱走天涯> 阅读(224) 评论(0) 推荐(0) 编辑

2013年7月31日 #

perl回文数解析,比C容易多了

摘要: #!/usr/bin/perl -wuse v5.10;@array = split "", shift @ARGV;@array_1 = @array[0..($#array+1)/2-1];@array_2 = reverse @array[($#array+2)/2..$#array];print "Array: @array\n";print "@array_1\n";print "@array_2\n";就是有一点,下标不好算! 阅读全文

posted @ 2013-07-31 20:50 <为爱走天涯> 阅读(368) 评论(0) 推荐(0) 编辑

2013年7月2日 #

修复FreeBSD上的ufs文件系统

摘要: 昨天在两台FreeBSD上配置好Heartbeat服务(两台机器是用网线连通的,做为Heartbeat的两个节点),启动服务时Heartbeat检测到crmd守护进程没起来,于是它就尝试重启两台机器以启动crmd守护进程。不料重启的过程文件系统出问题了。 错误的信息是这样的: panic: ufs_dirbad: /: bad dir ino 321044 at offset 512: mangled entry cpuid=0 之后是一堆的内核栈空间的出错信息,并提示,系统15秒后自动启动。 既然是文件系统出错,又是ufs文件系统,当然第一时间想到的是f... 阅读全文

posted @ 2013-07-02 19:15 <为爱走天涯> 阅读(1683) 评论(0) 推荐(0) 编辑

2013年5月12日 #

字典序生成算法例子,时间复杂度为n^2

摘要: 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 5 6 char *words ="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"; 7 char *ptr[62] = {0}; 8 9 10 void print_words()11 {12 int idx = sizeof(ptr)/sizeof(*ptr);13 while(--idx >= 0)14 {15 if 阅读全文

posted @ 2013-05-12 03:36 <为爱走天涯> 阅读(320) 评论(0) 推荐(0) 编辑

2013年4月22日 #

mtrace跟踪内存泄漏

摘要: mtrace是用来跟踪内存泄漏的功能开关,muntrace是用来关闭地它的跟功能。在使用mtrace时要在环境变量中添加宏MALLOC_TRACE,宏的值为生成的内存跟踪文件名。#include <stdio.h>#include <stdlib.h>#include <mcheck.h>int main(){ mtrace(); char *ptr = NULL; for(int i =0;i<2;i++) { int * p = (int*) malloc(sizeof(int)); p[1] = 1; } munt... 阅读全文

posted @ 2013-04-22 22:41 <为爱走天涯> 阅读(161) 评论(0) 推荐(0) 编辑

C 语言正则表达式与mmap结合使用

摘要: #include <stdio.h>#include <unistd.h>#include <fcntl.h>#include <sys/mman.h>#include <string.h>#include <errno.h>#include <regex.h>char *mptr = MAP_FAILED;int main(){ int status = 0; //FILE *fp = NULL; int cflags = REG_EXTENDED; regmatch_t pmatch[4]; const s 阅读全文

posted @ 2013-04-22 22:14 <为爱走天涯> 阅读(256) 评论(0) 推荐(0) 编辑