<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[键者天行]]></title><description><![CDATA[程序及人生成长的路程]]></description><link>https://blog.youkuaiyun.com/wolflion</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wolflion]]></copyright><item><title><![CDATA[【整理】windows图形编程]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/8507795</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/8507795</guid><author>wolflion</author><pubDate>Wed, 16 Jan 2013 00:55:00 +0800</pubDate><description><![CDATA[最近调查一个错误，无法加载属性页，代码显示在DrvPrinterEvent()有问题，但注释到依然有问题，感觉应该是在驱动加载不熟导致。觉得下个blog不错
http://blog.youkuaiyun.com/yzz2086/article/details/3368282

以这个知识体系，去查找下相关的DrvDocumentPropertySheets()是不是这个有问题？


文库：http]]></description><category></category></item><item><title><![CDATA[java碰到的问题总结(FAQ)]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/7927958</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/7927958</guid><author>wolflion</author><pubDate>Fri, 31 Aug 2012 10:09:19 +0800</pubDate><description><![CDATA[Q: Java的环境问题[jdk,tomcat,eclipse,myeclipse]
//这方面太杂，没准备呢


Q: java.lang.UnsupportedClassVersionError 
因为我们使用高版本的JDK编译的Java class文件试图在较低版本的JVM上运行，所报的错误。

http://blog.youkuaiyun.com/shendl/article/detai]]></description><category></category></item><item><title><![CDATA[FD_SET，FD_ISSET,FD_ZERO,select]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6602986</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6602986</guid><author>wolflion</author><pubDate>Wed, 13 Jul 2011 14:36:08 +0800</pubDate><description><![CDATA[FD_SET 打开类型fd_set的某一位FD_ZERO初始化fd_setFD_ISSET测试结构fd_set中的描述字直接到vc98/include的文件中查找他们就可以找到代码。select函数： 系统提供select函数来实现多路复用输入/输出模型。原型： #include]]></description><category></category></item><item><title><![CDATA[fd_set 用法]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6602947</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6602947</guid><author>wolflion</author><pubDate>Wed, 13 Jul 2011 14:19:46 +0800</pubDate><description><![CDATA[select()函数主要是建立在fd_set类型的基础上的。fd_set（它比较重要所以先介绍一下）是一组文件描述字(fd)的集合，它用一位来表示一个fd（下面会仔细介绍），对于fd_set类型通过下面四个宏来操作： fd_set set;FD_ZERO(&set);]]></description><category></category></item><item><title><![CDATA[初步认识迭代服务器和并发服务器]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6602034</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6602034</guid><author>wolflion</author><pubDate>Wed, 13 Jul 2011 09:35:48 +0800</pubDate><description><![CDATA[迭代服务器比较原始，它的原型可以描述成： while(1){new_fd = 服务器accept客户端的连接(new_fd = accept(listenfd, XX, XX))逻辑处理在这个new_fd上给客户端发送消息关闭new_fd}也就是说，这个进程是一个一个处理各个客户]]></description><category></category></item><item><title><![CDATA[unix网络编程（第三版）中的unp.h]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6601974</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6601974</guid><author>wolflion</author><pubDate>Wed, 13 Jul 2011 09:15:54 +0800</pubDate><description><![CDATA[/* Our own header. Tabs are set for 4 spaces,not 8 */#ifndef __unp_h#define __unp_h#include "/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CO]]></description><category></category></item><item><title><![CDATA[可重入函数与不可重入函数]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6291711</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6291711</guid><author>wolflion</author><pubDate>Thu, 31 Mar 2011 14:56:00 +0800</pubDate><description><![CDATA[<br /><br />转自：http://www.cppblog.com/franksunny/archive/2007/08/03/29269.html<br /><br />主要用于多任务环境中，一个可重入的函数简单来说就是可以被中断的函数，也就是说，可以在这个函数执行的任何时刻中断它，转入OS调度下去执行另外一段代码，而返回控制时不会出现什么错误；而不可重入的函数由于使用了一些系统资源，比如全局变量区，中断向量表等，所以它如果被中断的话，可能会出现问题，这类函数是不能运行在多任务环境下的。<br /]]></description><category></category></item><item><title><![CDATA[gcc和g++的区别]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6291697</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6291697</guid><author>wolflion</author><pubDate>Thu, 31 Mar 2011 14:52:00 +0800</pubDate><description><![CDATA[<br /><br />gcc和g++都是GNU(组织)的一个编译器。<br />误区一:gcc只能编译c代码,g++只能编译c++代码<br />两者都可以，但是请注意：<br />1.后缀为.c的，gcc把它当作是C程序，而g++当作是c++程序；后缀为.cpp的，两者都会认为是c++程序，注意，虽然c++是c的超集，但是两者对语法的要求是有区别的。C++的语法规则更加严谨一些。<br />2.编译阶段，g++会调用gcc，对于c++代码，两者是等价的，但是因为gcc命令不能自动和C＋＋程序使用的库联接]]></description><category></category></item><item><title><![CDATA[Linux系统环境下的Socket编程详细解析]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6291625</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6291625</guid><author>wolflion</author><pubDate>Thu, 31 Mar 2011 14:32:00 +0800</pubDate><description><![CDATA[<br /><br />来自： http://blog.163.com/jiangh_1982/blog/static/121950520082881457775/<br />　　什么是Socket<br />Socket接口是TCP/IP网络的API，Socket接口定义了许多函数或例程，程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程，必须理解Socket接口。<br />Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的]]></description><category></category></item><item><title><![CDATA[configure svn server on win]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6239681</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6239681</guid><author>wolflion</author><pubDate>Fri, 11 Mar 2011 11:45:00 +0800</pubDate><description><![CDATA[<br />1.http://sourceforge.net/projects/win32svn/  download  subversion<br /> <br />2.run后，从cmd模式下进入bin目录，如D:/Program Files/Subversion/bin><br /> <br />3.在这个目录下，执行svnadmin create D:/project_name/prj1<br /> <br />4.在project_name/conf/svnserve.conf把下面几行的注释去掉]]></description><category></category></item><item><title><![CDATA[intel中的cr寄存器]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6154718</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6154718</guid><author>wolflion</author><pubDate>Thu, 20 Jan 2011 13:43:00 +0800</pubDate><description><![CDATA[<br />//今天看UKL的时候看到CR寄存器<br /> <br />控制寄存器(CR0、CR 1、CR2和CR3)用於控制和确定处理器的操作模式以及当前执行任务的特性。 <br />CR0：中含有控制处理器操作模式和状态的系统控制标志； <br />CR1：保留不用； <br />CR2：含有导致页错误的線性位址。 <br />CR3：中含有页目錄表实体记忆体基底位址，因此该寄存器　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　　]]></description><category></category></item><item><title><![CDATA[Linux C 函数参考(内存控制) ]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6106194</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6106194</guid><author>wolflion</author><pubDate>Thu, 30 Dec 2010 00:29:00 +0800</pubDate><description><![CDATA[<br />//今天把这部分【Linux C函数库详解】chap3 内存分配函数 看了一下。<br />以下为内容<br />calloc（配置内存空间）  <br />相关函数  malloc,free,realloc,brk<br />表头文件  #include <stdlib.h><br />定义函数  void *calloc(size_t nmemb,size_t size);<br />函数说明  calloc()用来配置nmemb个相邻的内存单位,每一单位的大小为size,并返回指向第一个元]]></description><category></category></item><item><title><![CDATA[查看内核版本和发行版本]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6033624</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6033624</guid><author>wolflion</author><pubDate>Thu, 25 Nov 2010 00:04:00 +0800</pubDate><description><![CDATA[首先，要分清内核版本号和发行版本号的区别。
因为所有linux都是使用kernel.org上来的内核来作为发行版的基础的，所以内核版本号的高低大致能体现该linux版本的新旧。
而发行版本的版本号完全是各发行商自己定义的，不能用来和其它发行版本的版本号进行比较，比如SuSE的10.0不能和Red Hat的9.0比，也不能和Ubuntu的7.04比，没有可比性。发行版本号只是各个厂商为了区别自己]]></description><category></category></item><item><title><![CDATA[unix 环境高级编成 apue.h ，apueerror.h的代码]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6016176</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6016176</guid><author>wolflion</author><pubDate>Wed, 17 Nov 2010 21:05:00 +0800</pubDate><description><![CDATA[<br /><br /> ===================apueerror.h=========================================<br />$ cat apueerror.h<br />#include <errno.h>      /* for definition of errno */<br />#include <stdarg.h>     /* ISO C variable aruments */<br />static void err_doit(int,]]></description><category></category></item><item><title><![CDATA[Ubuntu的新旅程]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6003865</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6003865</guid><author>wolflion</author><pubDate>Thu, 11 Nov 2010 23:53:00 +0800</pubDate><description><![CDATA[之前呢，手上有张关于 Mandriva的盘，可能是2.4的核，很多命令工具都没有，同事建议安装Ubuntu，自己试了下，果然安装很方便。
 
当然OpenSolaris自己没安装起来，这部分不太会安装-----以后用到再看吧。
 
昨天安装了Ubuntu，但不小心安装的是中文，本来可以更改一下系统里的语言设置，出于对ssh工具对中文字符集支持的担忧，今天决定重装english了。]]></description><category></category></item><item><title><![CDATA[宏]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/6003803</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/6003803</guid><author>wolflion</author><pubDate>Thu, 11 Nov 2010 23:19:00 +0800</pubDate><description><![CDATA[<br />这几个宏是为了进行条件编译。一般情况下，源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译，也就是对一部分内容指定编译的条件，这就是"条件编译"。有时，希望当满足某条件时对一组语句进行编译，而当条件不满足时则编译另一组语句。<br />条件编译命令最常见的形式为：<br />#ifdef 标识符<br />程序段1<br />#else<br />程序段2<br />#endif<br /><br />它的作用是：当标识符已经被定义过(一般是用#define命令定]]></description><category></category></item><item><title><![CDATA[解析#pragma指令]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/5681735</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/5681735</guid><author>wolflion</author><pubDate>Sun, 20 Jun 2010 15:20:00 +0800</pubDate><description><![CDATA[转自优快云在所有的预处理指令中，#Pragma 指令可能是最复杂的了，它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。其格式一般为: #Pragma Para其中Para 为参数，下面来看一些常用的参数。(1)message 参数。 Message 参数是我最喜欢的一个参数，它能够在编译信息输出窗口中输出相应]]></description><category></category></item><item><title><![CDATA[Protocol Stack]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/5664533</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/5664533</guid><author>wolflion</author><pubDate>Fri, 11 Jun 2010 16:30:00 +0800</pubDate><description><![CDATA[简介<br />　　协议栈是指网络中各层协议的总和，其形象的反映了一个网络中文件传输的过程：由上层协议到底层协议，再由底层协议到上层协议。使用最广泛的是英特网协议栈，由上到下的协议分别是：应用层（HTTP，TELNET，DNS，EMAIL等），运输层（TCP，UDP），网络层（IP），链路层（WI-FI，以太网，令牌环，FDDI等），物理层。 协议栈 Protocol Stack ↑<br />　　如果不参考下面进行数据交换的协议或通信过程的讨论，那么就不可能讨论计算机的互联。对协议的任何讨论通常都会牵涉到]]></description><category></category></item><item><title><![CDATA[协议栈开发学习总结 ]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/5664247</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/5664247</guid><author>wolflion</author><pubDate>Fri, 11 Jun 2010 15:09:00 +0800</pubDate><description><![CDATA[<br /> <br />2008年5月30日 星期六晴<br />    近来一直很少些关于技术方面的文章，一来是被工作和生活所累，没有很多闲暇多余的时间,二来呢是觉得一直没有好的case，或则有好的case，但觉得目前在这个case方面，自己还不算很professional。今天心情不错，感觉也很好，就把我近一年来在“协议栈”开发方面的一些经验写下来，算是对自己这一阶段的一个终结，也希望能对后来者能有所帮助。<br />    首先，不要以为做协议栈开发很难(诚然，商用稳定的协议栈开发的确也不容易^_^]]></description><category></category></item><item><title><![CDATA[标题：几种开放源码的TCPIP协议栈比较]]></title><link>https://blog.youkuaiyun.com/wolflion/article/details/5664215</link><guid>https://blog.youkuaiyun.com/wolflion/article/details/5664215</guid><author>wolflion</author><pubDate>Fri, 11 Jun 2010 15:02:00 +0800</pubDate><description><![CDATA[2008-01-21 14:05:22<br />1、BSD TCP/IP协议栈<br />     BSD栈历史上是其他商业栈的起点，大多数专业TCP/IP栈（VxWorks内嵌的TCP/IP栈）是BSD栈派生的。这是因为BSD栈在BSD许可协议下提供了这些专业栈的雏形，BSD许用证允许BSD栈以修改或未修改的形式结合这些专业栈的代码而无须向创建者付版税。同时，BSD也是许多TCP/IP协议中的创新（如广域网中饿拥塞控制和避免）的开始点。<br />2、uC/IP<br />    uC/IP是由Guy ]]></description><category></category></item></channel></rss>