自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(42)
  • 资源 (5)
  • 收藏
  • 关注

转载 理解 Linux 配置文件

http://www.ibm.com/developerworks/cn/linux/management/configuration/ 

2007-08-10 20:06:00 378

原创 s-random随机交织器程序

Turbo码中需要实现s-random随机交织器,简单来说,就是要生成一个长度为n的随机序列,使得每一个数与前面s个数的距离(差值)都大于s. 用穷举的方法一个个测试显然非常得慢。希腊学者07年底写的一篇application of the bubble search sorting method>基于冒泡的思想实现复杂度较低的s-random交织序列生成。int interleave

2008-06-04 17:46:00 1560 4

原创 linux任务调度学习

 调度单位    进程描述,位于运行栈底部,可通过偏移定位thread_info {               task_struct *task;   //基本调度单位(下面展开)         flags //TIF_NEED_RESCHED表明需要调度         cpu   //CPU号        。。。     }任务调度的基本单位  

2008-02-13 09:53:00 3688

原创 scrum开发

    这次去MSRA的培训,时间比较仓促,技术最大的收获就是M$内部的开发模式。    对于中小型项目,MS采用scrum这种敏捷开发模式(http://www.controlchaos.com)    简单来说,就是先按功能列表的各项需求优先级,分开一个个sprint进行迭代开发。每一个sprint周期大概30天,每天做20分钟的汇报,使得小组成员随时跟踪项目进度。当一个sprint结

2008-02-03 14:35:00 574

原创 Observer模式的理解

      最近的项目中遇到了多个对象之间协作的设计问题,经过参考别的一些代码,发现解决这种一对多的对象间协作问题,通常使用Observer模式进行设计。什么是Observer(观察者)模式呢?下面举一个简单的例子。    假设我们要设计一个交通状况监控系统,收到的数据封装成TrafficData类,然后把他拥堵状况用图形显示出来,处理该显示用TrafficMap类实现,然后又想以表格形式显示

2007-11-03 11:02:00 602

原创 Directshow的Filter开发简要步骤

本文以一个Transform Filter为例,一步步整理Transform Filter一般开发步骤。本文的Filter名为GrayFilter,把YUV视频信号转化为灰度信号,造成黑白电视的效果。 1. 配置开发环境    1. VC中在Tools->Options->Directories 设置好DirectX SDK的头文件和库文件路径      2. 编译了基类源

2007-10-16 23:34:00 1040

原创 web2.0

昨天老板突然问我什么是web2.0.我:  web2.0就是博客, Youtube, Flickr, wiki之类的网站,网民既是内容提供者又是内容消费者。老板曰: 那只是商业模式不一样,技术上有什么革命性的革新么?我:Er... ...于是找了这篇文章,比较详细的论述了web2.0http://www.enet.com.cn/article/2005/1122/A200511

2007-09-30 12:47:00 394

原创 编译VIM

今天下载了VIM的代码包,编译时把大部分功能开尽。7.1主要有两个包 vim-7.1.tar.bz2, vim-7.1-lang.tar.gz (多国语言包)前者是bz2格式的,用 tar xvfj vim-7.1.tar.bz2 解压 ( j表示解压bz2)后者用  tar xzvf vim-7.1.lang.tar.gz 解压我的配置选项. / configure --with-feature

2007-08-28 13:49:00 2209

原创 BP神经网络(LM算法训练)--C代码

      前段时间毕业设计中写的一段代码,三层BP神经网络用于自适应,用Levenberg-Maquardt法进行训练。 #define EPSILON 1E-6//3层的神经网络结构typedef struct tag_bpnnt ...{    int in_n;           //输入层神经元数    int hidd_n;         //隐层神经元数    int

2007-08-27 13:03:00 8584 21

原创 深入ARP

     最近复习Internetworking with TCP/IP 的第一卷书 ,才发现他的章节习题颇有挑战性,如果都能顺利完成,基本具备一名初级黑客的知识基础了。    在IBM developerworks上发现几篇讲ARP的文章,以及相应的网络安全问题。   “ ARP协议揭秘”,回顾ARP已经ARP欺骗等问题。    http://www.ibm.com/develope

2007-08-14 13:16:00 563

原创 C++标准库与Java基础类对照

 C++标准库与Java基础类对照表作者: Daly     日期:2007-08-11   一、集合类 对象的集合,指如链表,数组,队列这一类的数据结构。在C++标准库中把这些成为Container, 在Java中称为Collection。 C++STL常用Container: vector, list, map, set, queue, stack, priorit

2007-08-11 14:42:00 2666

原创 正则表达式备忘

字符 描述 / 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,n 匹配字符 "n"。/n 匹配一个换行符。序列 // 匹配 "/" 而 "/(" 则匹配 "("。

2007-08-09 10:36:00 371

原创 开始学习Java

    Java已经是企业级Web开发的标准语言,其跨平台特性很方便地适应各种部署环境。     在众多开源项目中,一些java写成的程序也具有很高的参考价值。   于是开始了解这种普及度极高的语言。   学习工具:  《Thinking in Java 第三版》    MyEclipse 开发环境    IBM Developworks的教程  大概用了2天时间对基本

2007-08-08 17:58:00 363

转载 C语言宏定义技巧(常用宏定义)

转载:C语言宏定义技巧(常用宏定义)    写好C语言,漂亮的宏定义很重要,使用宏定义可以防止出错,提高可移植性,可读性,方便性 等等。下面列举一些成熟软件中常用得宏定义。。。。。。 1,防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H   //头文件内容 #endif 2,重新定义一些类型,防止由于各种平台和编译器的不同,而产生的类型字节数差异,方便移

2007-08-04 00:16:00 826

转载 RWGuard多线程读写同步类

摘自 第10章该类解决了同一进程内的生产者--消费者同步问题。 class CRWGuard  ...{public:    CRWGuard();    virtual ~CRWGuard();    void WaitToRead();    void WaitToWrite();    void Done();protected:    CRITICAL_SECTION m_

2007-08-02 14:51:00 668

原创 环形缓冲队列

    项目中需要线程之间共享一个缓冲FIFO队列,一个线程往队列中添数据,另一个线程取数据(经典的生产者-消费者问题)。开始考虑用STL的vector容器, 但不需要随机访问,频繁的删除最前的元素引起内存移动,降低了效率。使用LinkList做队列的话,也需要频繁分配和释放结点内存。于是自己实现一个有限大小的FIFO队列,直接采用数组进行环形读取。    队列的读写需要在外部进程线程同步(另

2007-08-02 14:44:00 1224

转载 实现业务系统中的用户权限管理

转载一篇文章http://blog.csdn.net/eagle11936/archive/2007/06/20/1659478.aspx  B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就

2007-07-17 10:45:00 555

原创 关于SubclassWindow()和SubclassDlgItem

msdn上的解析CWnd::SubclassWindowBOOL SubclassWindow( HWND hWnd );Return ValueNonzero if the function is successful; otherwise 0.ParametershWndA handle to the window.RemarksCall this member function to "

2007-07-16 21:41:00 4136

原创 仿任务管理器中"CPU使用"的控件

从CStatic中派生出这个类使用时先在对话框编辑器添加一个static文本框,再直接用classWizard 添加对话框的一个member variable成员CLevelBar, 又或者直接用Create动态生成。     该控件还提供警戒线设定,参数超过警戒线部分会用另一种颜色表示代码如下:类定义////////////////////////////////////

2007-07-12 20:19:00 692

原创 字节顺序和位域顺序的讨论

 大端和小端的讨论,一般计算机组成原理教材都会有谈到,但多数不够深入。Big Endian:  高位字节放到内存的低位地址,反之亦然。以太网网络传输字节序, PowerPC, UltraSparc一类的处理器采用大端。Little Endian: Intel的IA-32架构采用。高位字节放到内存高位地址。记得学X86结构是有一记忆口令:High high, low low比特位顺序一般

2007-05-05 17:19:00 1705 1

原创 高斯消元法求线性方程组

#define SWAP(x,y) if((x)!=(y)) /    { x = x+y; /     y = x-y; /      x = x-y; } //////////////////////////////////////////////////////////////////  gauss-jordan消元法解线性方程组Ax = B//  参数//  a -- 输入系数矩阵,输

2007-04-19 23:05:00 754

原创 windows编程好书介绍

  VC6技术内幕    David J. Kruglinski      MFC编程入门好书,一步步由浅入深走入MFC编程世界。看完这本再看候俊杰的,剩下的问题由MSDN解决吧 Charles Petzold     这书是WIN32 SDK的宝典级著作。即使用MFC等编程框架,这书也有很高的参考价值下面的都是经典,遇到问题时解惑的好帮手  Jeffery.Richter

2007-04-12 21:45:00 864 1

转载 什么是内核对象

什么是内核对象作为一个Wi n d o w s 软件开发人员,你经常需要创建、打开和操作各种内核对象。系统要创建和操作若干类型的内核对象,比如存取符号对象、 事件对象、文件对象、文件映射对象、I / O 完成端口对象、作业对象、信箱对象、互斥对象、管道对象、进程对象、信标对象、线程对象和等待计 时器对象等。这些对象都是通过调用函数来创建的。例如,C r e a t e F i l e M a

2007-04-12 21:29:00 836 2

原创 用C实现数据隐藏(私有化)

    在C++中,为了更好实现数据隐藏,可把成员设为protected或private,那么C又怎样做呢?    下面看这个例子:hidedemo.h     typedef struct Octstr Octstr ;hidedemo.c    struct Octstr{      int member1;      char* member2;}  

2007-04-08 09:37:00 618

翻译 利用C预编译管理相似结构体

  Daly(翻译, 有删减)Lars Wirzenius   http://liw.iki.fi/liw/texts/cpp-trick.html  介绍       一般教科书或者编程指南中都建议减少宏的使用,从我的经验看,大量使用宏是错误的来源,经常会使人陷入混乱。但当我1997年参与HiBase项目时学习到这个技巧后,使我很震惊。我发现在一些任务里,这个技巧可以避免大量相似

2007-04-04 11:24:00 706

转载 常见字符编码扫盲(UTF,Unicode, GB2312)

文章一,本文转载自:http://fmddlmyy.home4u.china.com/text6.html谈谈Unicode编码,简要解释UCS、UTF、BMP、BOM等名词这是一篇程序员写给程序员的趣味读物。所谓趣味是指可以比较轻松地了解一些原来不清楚的概念,增进知识,类似于打RPG游戏的升级。整理这篇文章的动机是两个问题:问题一: 使用Windows记事本的“另存为”,可以在G

2007-04-03 13:56:00 1208 1

转载 软件需求的实践

http://www.ibm.com/developerworks/cn/linux/software_engineering/requirement/part1/ IBM的文章,关于需求的实践。最近在看, 真是一本很好的书,通常讲软件工程的书都感觉太虚,毕竟没有参与过大型的项目。但是这本书讲得很实在很生动,而且确实能应用到项目开发当中。赞~~

2007-03-25 18:07:00 464

原创 最小平方误差的求值

     在很多问题里,通常要找到一个系数a,使得给定的误差函数值形如f(d(x,a)-t)期望最少,其中t为真实值,d(x,a)是关于自变量x,系数为a的函数(通常是线性函数)(注:x和a通常是向量,表示一组自变量和对应的一组系数)。给定的误差函数可以是误差的绝对值期望,也可以是误差值的平方的期望。通常平方比绝对值更常用,因为方便做微分运算。    对于平方误差函数E = Σ(d(x,a

2007-03-15 17:03:00 4387 1

原创 空间变换及其应用(二)----仿射,双线性,透视

        上篇复习了空间,映射和变换的概念。接下来介绍几种图像处理中常见的仿射,双线性,透视。下面仅讨论二维的情况。 仿射(affine)       仿射变换是一个线性变换,变换后保持图形的平直性(直线还是直线),平行性(平行线变换后还是平行)。仿射变换通过一系列原子变换实现:平移(translation),缩放(scale),翻转(flip),旋转(rotation),

2007-02-28 16:35:00 2776 1

原创 空间变换及其应用(一)----代数几何重温

    空间变换在计算机图形学,图像及视频处理,密码学,通信编码中有着广泛的应用。本文归纳几种常见的变换,进一步可参阅高等代数与解析几何方面的教材。在实际应用中,很多时候需要把一个点(坐标)从一个空间映射到另一个空间。例如在游戏设计中存在多个坐标系,他们之间的点的映射关系就得通过变换。简单来说,变换就是在空间中到自身(即定义域和值域相同)的映射,通过矩阵相乘来完成。    先来重温一下

2007-02-28 16:25:00 1196

转载 MFC应用程序中指针的获取

MFC应用程序中指针的使用         1)   在View中获得Doc指针     2)   在App中获得MainFrame指针     3)   在View中获得MainFrame指针     4)   获得View(已建立)指针     5)   获得当前文档指针     6)   获得状态栏与工具栏指针     7)   获得状态栏与工具栏变量     8)   在Mainframe

2007-02-14 22:12:00 687

转载 XML新手入门

IBM的XML教程http://www.ibm.com/developerworks/cn/xml/newto/index.html XML and how it will change the Webhttp://www-128.ibm.com/developerworks/xml/library/xml-web/index.html XML是什么?XML,或称为可扩展标记语

2007-02-03 23:14:00 476

原创 C++编程规范(下)

 第三章命名规则比较著名的命名规则当推Microsoft公司的“匈牙利”法,该命名规则的主要思想是“在变量和函数名中加入前缀以增进人们对程序的理解”。例如所有的字符变量均以ch为前缀,若是整型数则用n为前缀。例如nWidth, chText, fTax. 但笔者认为这种表示方法过于烦琐,而且未必真能有效增进理解,因此不建议用匈牙利法。良好的命名规则可便于记忆和理解。但是什么是好的命名规

2007-01-30 21:31:00 434

原创 C++编程规范(上)

 第一章文件声明【规则1-1】头文件和定义文件的说明       在头部声明文件的基本信息。1) 文件名2) 简要说明该文件的作用3) 版本信息,原作者和编辑作者,建立日期或最后修改日期 /************************************************

2007-01-30 21:29:00 448

原创 算法导论系列--动态规划

     动态规划(dynamic programming) 是个较难理解的算法,常用于最优化问题的求解。和分治法类似,动态规划也是解决小问题的基础上合并为更大规模的解。动态规划中,一个大问题的一个最优解必定包含子问题的最优解;且这些子问题是重叠的。为免子问题重复计算,通常将子问题的最优解储存在一个表中。并且,后续问题的解必须不会影响之前子问题的最优解(无后效性)。    设计一个动态规划

2007-01-20 23:07:00 831

原创 算法导论系列--计算几何(computational geometry)

 Computational Geometry是个十分有趣的课题。很遗憾笔者不是数学/计算机专业,对这个领域认识很少。第一次接触这个词是在topcoder的算法教程里面,被其算法的巧妙所吸引,可惜未有机会进一步学习。认识所限,本文介绍仅能最简单的2D几何算法跟大家分享。对于从事CAD软件开发,图形开发,统计,游戏开发的人,计算几何都是必修课。这个领域有一本很著名的入门书:Mark de ber

2007-01-17 21:17:00 3733 1

原创 数字通信ABC

     通信的目的就是把信息从一处传达到另一处。那么信息怎样量化呢?香农(Shannon)信息论中定义了信息熵(entropy) H = - ∑ pi log2 (pi ) ,即每个信息源输出所含的平均信息量。其中pi为每个可能值的概率, 熵的单位是比特(bit)。例如我告诉你:我是男孩,这条信息包含了1 bit,因为性别只有男和女两种可能值,概率都是0.5。    数字通信系统(以下简

2007-01-17 12:01:00 825

原创 算法导论系列--Divide & Conquer(分而治之)

  分而治之(Divide and conquer)     Divide and conquer(分治法)的基本思想是把一个大问题分解成若干个小问题,把小问题逐个击破后组合起来,得出结果。算法步骤如下:    (1) Divide: 按一定预设条件把问题分解为若干。    (2) Conquer: 解决每个子问题(通常是递归)    (3) Combine: 各子问题的组

2007-01-16 12:31:00 2701

原创 算法导论系列----算法规模.递归式

     一般来说,算法中基本操作重复执行的次数是问题规模n的某个函数f(n),f(n)是一个随n增长的函数,当n很大时,其逼近某个函数g(n)的增长。常用渐进符号Θ(g(n)),上限符号O(g(n))(大O符号),下限符号Ω(g(n))。定义Θ(g(n)) 为0 ≤ c1g(n) ≤ f(n) ≤ c2g(n), O(g(n))为0 ≤ f(n) ≤ cg(n),Ω(g(n))为0 ≤ cg

2007-01-15 22:08:00 855

转载 关于字节对齐

字节对齐 为了能使CPU对变量进行高效快速的访问,变量的起始地址应该具有某些特性,即所谓的“对齐”。例如对于4字节的int类型变量,其起始地址应位于4字节边界上,即起始地址能够被4整除。变量

2007-01-12 11:40:00 523

undocumented windows NT中文版

windowsNT底层编程内幕~~~~~~~~

2009-11-21

UML distilled第二版(英文)

UML distilled, 简短扼要地介绍了UML的基本知识。

2009-10-06

<UNIX编程艺术>

unix编程艺术,一本介绍unix程序设计理念的书。

2009-02-11

kademlia原理

P2P一种重要的DHT技术Kademlia说明。 该份资料详细的讨论了该算法。做P2P开发的朋友可以参考一下。

2009-01-06

空空如也

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

TA关注的人

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