自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何看懂源代码--(分析源代码方法)

转自《http://www.cnblogs.com/ToDoToTry/archive/2009/06/21/1507760.html》我们在写程式时,有不少时间都是在看别人的代码。 例如看小组的代码,看小组整合的守则,若一开始没规划怎么看, 就会“噜看噜苦(台语) ” 不管是参考也好,从开源抓下来研究也好,为了了解箇中含意,在有限的时间下,不免会对庞大的源代码解读感到压力。 网路上有一篇关...

2016-04-01 00:00:51 2090 3

原创 为什么用纯c写一个通用的容器非常难?

Writing a generic container in pure C is hard, and it’s hard for two reasons:1. The language doesn’t offer any real support for encapsulation or information hiding.  That means that the data st...

2016-02-22 22:07:36 340

原创 string.c

void*memset(void *dst, int c, uint n){ if ((int)dst%4 == 0 && n%4 == 0){ c &= 0xFF; stosl(dst, (c<<24)|(c<<16)|(c<<8)|c, n/4); } else stosb(dst,...

2016-01-29 19:57:31 144

原创 编程语言IDE对比

IDE的对比<http://www.iteye.com/magazines/134-IDE-Comparison>

2016-01-29 19:23:45 414 1

原创 最近有感

        感觉自己老犯这样一个错误,做什么都想全部搞懂,做什么都一定要做的完美最好,结果陷入细节的深渊。然而到最后也没有一个整体的把握,做出来的东西要么拖了很久,要么根本就做不出来。这种感觉应该就是以前看过一篇文章中的程序员的技术洁癖,在不顾实际情况下,想等待所有的条件都成熟,所有的技术都搞懂了,才去下手,去做一件事。到最后结果是什么也做不好。        因为,什么都搞懂是一件几乎...

2016-01-29 19:20:56 84

原创 memcache代码(1.4.25)

共享一份memcache(1.4.25)的代码

2016-01-20 20:29:20 101

原创 libev(4.22)代码

共享一份libev(4.22)的代码

2016-01-20 20:27:34 209

原创 linux 环境下修改readonly变量(例如TMOUT)

$ readonly PI=3.14$ unset PI-bash: unset: PI: cannot unset: readonly variable$ cat << EOF| sudo gdbattach $$call unbind_variable("PI")detachEOF$ echo $PI$

2016-01-20 20:23:34 6658

原创 读程序员的修炼之道

最近在读程序的修炼之道,这本书是一本注重实践的书籍。里面的道理看似简单朴实,却是作者在实际生活中的点点积累总结。这一过程需要多年的积累才能达到。其实里面的道理读者都基本懂,工作中多多少少都能遇到,但是不够全面,并且见地也没作者高。只有当我们遇到书中的情景就能与作者产生共鸣。...

2015-12-21 23:43:57 96

原创 三本经典书籍

1> Object-Oriented software Construction(面向对象软件构造)2>Design Patterns(设计模式)3>Analysis Patterns(分析模式)

2015-11-25 23:20:34 1026

原创 xv6的引导过程(操作系统引导分析)

 引导的汇编代码如下:#include "asm.h"#include "memlayout.h"#include "mmu.h"# Start the first CPU: switch to 32-bit protected mode, jump into C.# The BIOS loads this code from the first sector of...

2015-10-11 22:55:20 1829

原创 进程vs线程

转<http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/001397567993007df355a3394da48f0bf14960f0c78753f000>我们介绍了多进程和多线程,这是实现多任务最常用的两种方式。现在,我们来讨论一下这两种方式的优缺点。首先,要...

2015-10-07 15:15:35 93

原创 vim tab设置为4个空格

转<http://blog.csdn.net/jiang1013nan/article/details/6298727>在.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格:set ts=4  (注:ts是tabstop的缩写,设TAB宽4个空格)set expandtab对于已保存的文件,可以使用下面的方法进行空格和TAB的替换:TAB替换为空格::set...

2015-10-07 13:14:40 101

原创 几个不错的博客

http://www.matrix67.com/blog/http://blog.csdn.net/Hackbuteer1/article/category/1235683http://www.jianshu.com/collection/e2a2a0073e2dhttp://www.jianshu.com/p/1a97412b27b0https://github.com/jus...

2015-09-26 22:56:15 85

原创 打印自身的程序

http://lifegoo.pluskid.org/wiki/Quine.html

2015-09-26 22:41:50 137

原创 c++库

转<http://www.cppblog.com/merlinfang/archive/2014/12/26/209311.aspx> 下次造轮子前先看看现有的轮子吧 值得学习的C语言开源项目- 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工...

2015-09-21 21:55:32 152

原创 复制特殊链表

转自<http://blog.sina.com.cn/s/blog_69824c1f0100v4ob.html>struct node        {             int data;             struct node * next;             struct node * random;        };        本题来源是ms的一...

2015-09-13 01:24:46 235

原创 C 语言高级编程指南 (Peter Facka)

转自<http://pfacka.binaryparadise.com/articles/guide-to-advanced-programming-in-C.html>Guide to Advanced Programming in CBack06 Jan 2014 C language is language of choice for system pr...

2015-07-27 22:37:48 643

原创 stl:sort(stl快速排序)

http://feihu.me/blog/2014/sgi-std-sort/#introspective-sort

2015-07-24 22:35:47 415

原创 守望者的逃离

转自<http://blog.csdn.net/xiaoke5881037/article/details/22307139> //恶魔猎手尤迪安野心勃勃.他背叛了暗夜精灵,率深藏在海底的那加企图叛变:守望者在与尤迪安的交锋中遭遇了围杀.被困在一个荒芜的大岛上//。为了杀死守望者,尤迪安开始对这个荒岛施咒,这座岛很快就会沉下去,到那时,岛上的所有人都会遇难:守望者的跑步速度...

2015-07-23 21:33:59 119

原创 双数组-字典算法

转自双数组字典算法:<http://linux.thai.net/~thep/datrie/datrie.html>An Implementation of Double-Array TrieContentsWhat is Trie?What Does It Take to Implement a Trie?Tripple-Array TrieDouble...

2015-04-16 21:28:55 433

原创 c预言的一些经典问题

1.这样的初始化有什么问题?char *p = malloc(10); 编译器提示非法初始式 云云。 答:这个声明是静态或非局部变量吗?函数调用只能出现在自动变量(即局部非静态变量) 的初始式中。因为静态变量的地址必须在编译的过程中就确定下来而malloc()申请的内存地址是在运行时确定的。 2. *p++ 自增p 还是p 所指向的变量? 答:后缀++ 和-- 操...

2015-02-16 16:03:12 106

原创 罗马数字

转自<http://wenda.haosou.com/q/1361491934063558>XXI, 21  个位数举例 I, 1 】II, 2】 III, 3】 IV, 4 】V, 5 】VI, 6】 VII, 7】 VIII,8 】IX, 9  ·十位数举例 X, 10】 XI, 11 】XII, 12】 XIII, 13】 XIV, 14】 XV, 15 ...

2015-02-10 16:33:21 358

原创 x86寄存列表

                                  转自<http://blog.sina.com.cn/s/blog_7d82d16d01013m1b.html>  

2015-01-31 19:37:12 88

原创 X86汇编指令

转自<http://blog.sina.com.cn/s/blog_9efa18c3010118qh.html>一、数据传送指令1.通用数据传送指令MOV(Move)传送 PUSH(Push onto the stack)进栈 POP(Pop from the stack)出栈 XCHG(Exchange)交换.MOV指令 格式为: MOV   DST,SRC 执行的操作:(...

2015-01-24 16:11:02 936

原创 嵌入式汇编

转自<http://blog.csdn.net/slvher/article/details/8864996>在阅读Linux内核源码或对代码做性能优化时,经常会有在C语言中嵌入一段汇编代码的需求,这种嵌入汇编在CS术语上叫做inline assembly。本文的笔记试图说明Inline Assembly的基本语法规则和用法(建议英文阅读能力较强的同学直接阅读本文参考资料中推荐的...

2015-01-24 15:54:05 645

原创 linux版本信息以及x86与x86_64的区别

转自<http://www.cnblogs.com/Totems/p/3198287.html>一 x86、x86_64、AMD64x86是指intel的开发的一种32位指令集,从386开始时代开始的,一直沿用至今,是一种cisc指令集,所有intel早期的cpu,amd早期的cpu都支持这种指令集,intel官方文档里面称为“IA-32”x84_64是x86 CPU...

2015-01-18 11:53:02 672

原创 虚拟机上网

当关闭了window服务中的VMware DHCP Services时,虚拟机是不能够通过主机上网。 这时需要打开window中的VMware DHCP Services服务。 在命令行窗口下,输入services.msc后启动window的服务管理。 在服务列表中找到VMware DHCP Services,启动该服务,这时虚拟机就可以上网了。...

2015-01-18 10:03:59 83

原创 linux源码目录结构

转自 <http://blog.itpub.net/241185/viewspace-254982/>1、Linux核心源程序通常都安装在/usr/src/linux下,而且它有一个非常简单的编号约定:任何偶数的核心(的二个数为偶数,例如2.0.30)都是一个稳定地发行的核心,而任何奇数的核心(例如2.1.42)都是一个开发中的核心。2、核心源程序的文件按树形结构进行组织,...

2015-01-17 18:46:56 118

原创 linux启动

转自<http://www.docin.com/p-550589514.html>          对于 Intel  x86   PC , 开启电源后, 机器就会开始执行 ROM BIOS 的一系列系统测试动作,包括检查RAM,keyboard,显示器,软硬磁盘等等。执行完bios 的系统测试之后,紧接着控制权会转移给ROM 中的启动程序(ROM bootst...

2015-01-17 14:22:54 90

原创 Ken Thompson 的经典 C 程序

转自<http://www.cnblogs.com/coderzh/archive/2008/05/13/1194426.html> 自我复制的程序! char s[]={'\t','0','\n','}',';','\n','\n','m','a','i','n','(',')','\n','{','\n'...

2015-01-15 17:55:12 1323

原创 24点算法

 #include <iostream>#include <vector>#include <math.h>//c1: (((A,B),C),D)//c2: ((A,B),(C,D))std::vector< std::vector<double> > permutaionSet;void sw...

2015-01-10 18:48:01 408

原创 window打开服务的dos命令

转自<http://blog.csdn.net/yushuai007008/article/details/7435965>“开始”---> “运行”输入以下命令,或者Win + R,输入以下命令对我比较有用的几个:31. regedit.exe----注册表48. msconfig.exe---系统配置实用程序  80. services.msc---...

2014-12-31 14:48:13 122

原创 c语言18问

转自<http://bbs.csdn.net/topics/340064427>1.这样的初始化有什么问题?char *p = malloc(10); 编译器提示“非法初始式” 云云。 答:这个声明是静态或非局部变量吗?函数调用只能出现在自动变量(即局部非静态变量) 的初始式中。 因为静态变量的地址必须在编译的过程中就确定下来而malloc()申请的内存地址是在运行时确定的。2....

2014-12-29 22:44:53 81

原创 VMWare安装Ubuntu 12.04开启虚拟机的Unity Mode模式

转自<http://www.2cto.com/os/201303/196637.html>VMWare安装Ubuntu 12.04开启虚拟机的Unity Mode模式   这是一个非常难以找到解决方法的问题,因为VMWare和Ubuntu都有Unitiy,前者指的是Unity Mode,后者指的是Unity Shell。我的主机操作系统是Windows 7 ,安...

2014-10-11 08:59:41 77

原创 高斯分布随机数

这里有一个由Marsaglia首创Knuth推荐的方法:#include <stdlib.h>#include <math.h>double gaussrand(){ static double V1, V2, S; static int phase = 0; double X; if ( phase ...

2014-10-08 17:01:09 249

原创 TCP/IP协议族之运输层

转自<http://www.cnblogs.com/way_testlife/archive/2010/10/11/1848241.html>TCP的流量控制1. 利用滑动窗口实现流量控制    如果发送方把数据发送得过快,接收方可能会来不及接收,这就会造成数据的丢失。所谓流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。    利用滑动窗口机制可以很方便...

2014-10-07 21:14:21 125

原创 TCP和UDP之间的区别

转自<http://feinibuke.blog.51cto.com/1724260/340272>TCP和UDP区别  TCPUDP是否连接面向连接面向非连接传输可靠性可靠的不可靠的应用场合传输大量的数据少量数据...

2014-10-07 19:04:35 82

原创 printf的格式化参数是"%.*s\n"

转自<http://bbs.csdn.net/topics/240071843>*表示输出位数,具体的数据来自参数表 printf格式字符串中与宽度控制和精度控制有关的常量都可以换成变量, 方法就是使用一个“*”代替那个常量,然后在后面提供变量给“*” #include <stdio.h> #include <conio.h> int main() { c...

2014-10-06 15:57:57 178

原创 TCP长连接与短连接的区别

转自<http://www.cnblogs.com/beifei/archive/2011/06/26/2090611.html>1. TCP连接当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接 时它们可以释放这个连接,连接的建立是需要三次握手的,而释放则需要4次握手,所以说每个连接...

2014-09-30 00:06:11 76

空空如也

空空如也

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

TA关注的人

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