自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (2)
  • 收藏
  • 关注

转载 在linux系统下core文件的调试方法

在linux系统下core文件的调试方法  在程序不寻常退出时,内核有可能把该程序当前内存映射到core文件里,内核会在当前工作目录下生成一个core文件(当一个程序崩溃时,在进程当前工作目录的core文件中复制了该进程的存储图像。core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的)。使用gdb来查看core文件,可以指示出导致程序出错的代码所在文件和行数。

2010-05-19 17:09:00 643

转载 TCP协议三次握手四次挥手过程分析

TCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急

2010-05-18 22:06:00 1343

原创 什么是CGI

1. 定义: CGI(Common Gateway Interface)是HTTP服务器与你的或其它机器 上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。 2. 功能: 绝大多数的CGI程序被用来解释处理杰自表单的输入信息,并在服 务器产生相应的处理,或将相应的信息反馈给浏览器。CGI程序使 网页具有交互功能。 3. 运行环境: CGI程序在UNIX操作系统上CERN或NCSA格式的服

2010-05-18 21:41:00 654

转载 linux下的deamon进程

设计一个linux下的deamon进程,关键只有几个:1.fork两次。2.fork第一次和第二次之间成为进程组头。3.改变工作目录。4.忽略信号。5.设置读写掩码。一下是一个从网络搜集到的例程,非常好的演示了上述要点,存此备忘。#include #include #include #include void main(int argc, char ** argv){time_t now;int

2010-05-18 21:17:00 533

转载 Linux 的多线程编程的高效开发经验

2009 年 4 月 23 日本文中我们针对 Linux 上多线程编程的主要特性总结出 5 条经验,用以改善 Linux 多线程编程的习惯和避免其中的开发陷阱。在本文中,我们穿插一些 Windows 的编程用例用以对比 Linux 特性,以加深读者印象。背景Linux 平台上的多线程程序开发相对应其他平台(比如 Windows)的多线程 API 有一些细微和隐晦的差别。不注意这些

2010-05-18 21:05:00 463

转载 linux中线程相关函数

linux中线程相关函数2010年03月09日 星期二 22:181. 比较两个线程 ID 是否一致。   线程ID 使用 pthread_t 数据类型来表示。Linux 使用 unsigned long int 表示pthread_t 数据类型。Solaris 9 把 pthread_t 数据类型表示为 unsigned int。FreeBSD5.2.1 和 MA

2010-05-18 20:50:00 1824

转载 epoll使用详解(精髓)

epoll使用详解(精髓)  epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内

2010-05-18 17:33:00 444

转载 CTorrent程序源码分析

CTorrent程序源码分析2007-01-31 20:26 我在大四上学期时曾做过BT客户端的移植工作。当时程序有一些bug,需要查看源代码才能解决。然后便进入了先是痛苦万分然后茅塞顿开最后十分享受的代码阅读。 互联网上讨论BT的的不少,但真正涉及底

2007-10-05 14:39:00 2392

转载 编译 eMule v0.46b(成功!)

 第一次编译0.46b没成功,后来有又尝试了几种方式,综合了下,对原来的网络资源错误的地方做了修改,正确的编译方法如下: 先下载下面4个库: Crypto++ 5.2.1 http://www.eskimo.com/~weidai/cryptopp521.zip zlib123.zip http://www.zlib.net/zlib123.zip ResizableLib 1.3 http://

2007-09-23 11:55:00 944

转载 从MSN和QQ文件传输速度说开去

 发现很多情况下,MSN传输文件比QQ要慢,倒不是说MSN没有快的时候,但是大部分的时候是真的比QQ慢,连我这种神经比较大条的人都注意到了, Google了一下,早就有人做了解答,基本上就是说MSN传输文件是使用TCP,而QQ使用UDP,剩下的事情就是论证TCP传输文件没有UDP快.大 概的就是下面的几个观点: 1. TCP是可靠的,需要验证数据是否到达和是否正确,而UDP是不可靠的,少做了很多

2007-08-05 11:07:00 767

转载 穿透Socks5的UDP

网络编程中,对于数据传输实时性要求较高的场合,大家都会选择UDP来作为数据传输协议,在TCP/IP协议族中UDP协议较TCP协议需要的网络系统资源更少。然而在企业应用中,由于网络安全原因等会导致除了特定端口以外的IP数据无法通过专用的路由或网关。为了支持这类应用,制定了专门的支持Socks连接的socks4/socsk5协议。Socks协议允许实现此类功能的代理软件可以允许防火墙(本

2007-08-05 09:21:00 1478

转载 穿透防火墙建立UDP连接

知道现在流行的P2P软件和IM软件是如何让两台分处在不同防火墙后面的电脑直接对话的吗?SIP当然是一种,还有一种被广泛应用的就是本文介绍的UDP Hole Puching技术。 为了便于讲述,我们假设有这样一个网络拓扑结构:IP=A.A.A.A IP=1.1.1.1 HostA----------FirewallA---------| | Server IP=S.S.S.S | HostB-

2007-08-05 08:44:00 1897

转载 用UDP实现可靠文件传输

大家都清楚,如果用TCP传输文件的话,是很简单的,根本都不用操心会丢包,除非是网络坏了,就得重来。用UDP的话,因为UDP是不可靠的,所以用它传输文件,要保证不丢包,就得我们自己写额外的代码来保障了。本文就说说如果保证可靠传输。         要实现无差错的传输数据,我们可以采用重发请求(ARQ)协议,它又可分为连续ARQ协议、选择重发ARQ协议、滑动窗口协议。本文重点介绍滑动窗口协议,其它

2007-08-04 18:53:00 1359 1

原创 转-全球最小的一款P2P软件- eMuleBT软件框架分析

  eMuleBT是一款开源的软件项目(www.emulebt.com),俗称“变态驴”。因为同时集成了eMule和BT的功能,容量仅为460K,从而引起了一些人的注意。因为对eMule和BT的功能比较感兴趣的人也确实不少,所以小记也花了不少工夫请专业人士对其进行了分析,现对其表叙如下,以飨读者。     eMuleBT是完全安装C++的思想来写的一款软件,这样他的类封装是比较好的

2007-07-13 06:51:00 999

原创 Nutch相关的资料

 Nutch相关的资料 <!--google_ad_client = "pub-3593204875158947";google_ad_width = 250;google_ad_height = 250;google_ad_format = "250x250_as";google_a

2007-06-20 23:57:00 794

原创 Lucene:基于Java的全文检索引擎简介

Lucene:基于Java的全文检索引擎简介作者:车东 发表于:2002-08-06 18:08 最后更新于:2007-04-12 11:04版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。http://www.chedong.com/tech/lucene.html Lucene是一个基于Java的全文索引工具包。 基于Jav

2007-06-20 22:54:00 678

原创 Winsock, ConnectEx, shutdown, SO_UPDATE_CONNECT_CONTEXT and WSANOTCONN

 //=======================================================#include #define WIN32_LEAN_AND_MEAN#include #includeint main() {// Appint iRet;// Startup WinSockWSADATA wsaData;printf("WSAStartup(...):/n

2007-06-18 18:25:00 2577

原创 //资源保护对象

class CAutoLock{public: CAutoLock(){ ::InitializeCriticalSection(&m_crit);} virtual ~CAutoLock() { ::DeleteCriticalSection(&m_crit); }public: void  Lock(){  ::EnterCriticalSection(&m_crit); } void  Un

2007-06-04 16:58:00 761

原创 Vector的初始化与遍历

std::vectorint> IntTest;    for (int i = 0; i  10; ++i)    {        IntTest.push_back(i);    }    for (std::vectorint>::iterator iter = IntTest.begin(); iter != IntTest.end(); ++iter)    {        std:

2007-06-04 09:21:00 808

原创 用 VC 建立 Windows 服务程序

 为什么要使用服务应该程序呢?服务程序就像系统的一些服务一样,能够自动地启动,并执行相应的操作;而且因为服务程序的在层次上和一般的应用程序不同,其能够在系统启动时就自动地运行,而不像一般的应用程序那样一定要在登陆后才能运行,这些就是服务的一些好处了,如果你也想你的程序具有这样的功能,那么你就可以建立一个服务应用程序了。下面就跟着我一步一步地教你怎么去创建一个服务应用程序吧。        一、建立

2007-06-03 21:42:00 1874

原创 关于完成端口的应用,问一下,完成端口是不是只能用来做服务器?

DWORD   WINAPI   ServerWorkerThread(LPVOID   lpParam)     {             HANDLE   CompletionPort   =   (HANDLE)lpParam;             DWORD   BytesTransferred;             LPOVERLAPPED   lpOverlapped;  

2007-06-03 21:23:00 697

原创 线程进入阻塞时,线程会不会让出CPU?

 看你说的阻塞指的是什么,如果是死循环,当然占CPU,如果是用等待同步事件,会让出CPU碧水蓝天 [等级:◆(初级)] (信誉值: 100) 回复于: 2005-5-25 14:34:56 Top如果线程函数结构如下:DWORD ThreadFun(LPVOID para){while(1){阻塞语句;//执行到此处阻塞时,线程会不会让出CPU?}}alan [等级:◆◆◆

2007-06-03 21:08:00 6142

原创 想到文本在写库

 //如果是目录。递归向更低层次查找FFIND(ff.GetFilePath()+"//*.*");}else if(!ff.IsDirectory() && !ff.IsDots()){//是文件则,写数据库 File InfoCFileStatus rStatus;//File Info structure Typeif(CFile::GetStatus(ff.GetFilePath(),rS

2007-06-03 21:05:00 676

实时多线程系统的日志实现.rar

实时多线程系统的日志实现.rar

2008-04-28

Windows 网络编程第二版

Windows 网络编程第二版

2007-09-09

空空如也

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

TA关注的人

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