<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[vanpire110的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/vanpire110</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; vanpire110]]></copyright><item><title><![CDATA[ceph的git代码下载]]></title><link>https://blog.csdn.net/vanpire110/article/details/48300853</link><guid>https://blog.csdn.net/vanpire110/article/details/48300853</guid><author>vanpire110</author><pubDate>Tue, 08 Sep 2015 23:39:25 +0800</pubDate><description><![CDATA[上次分析了开源社区的加入方式，这次发现了ceph git代码下载方式，总结如下。
 
通过在github https://github.com上面搜索ceph，我们找到了开源代码，
https://github.com/ceph/ceph
其实在ceph.com的网站中也有提到，之后我们就是需要fork一份代码到属于自己的分支吧。
生成如下：
https://github.com/va]]></description><category></category></item><item><title><![CDATA[初步认识ceph文件系统d]]></title><link>https://blog.csdn.net/vanpire110/article/details/48299847</link><guid>https://blog.csdn.net/vanpire110/article/details/48299847</guid><author>vanpire110</author><pubDate>Tue, 08 Sep 2015 23:09:21 +0800</pubDate><description><![CDATA[Ceph is a distributed object store and file system designed to provide excellent performance, reliability and scalability.（ceph是一个分布式的对象存储用来文件系统，设计之初是为了提供优秀的表现，在可靠性和扩展性方面）。Ceph
 最初是一项关于存储系统的 PhD 研究项目]]></description><category></category></item><item><title><![CDATA[source insight 宏 添加函数注释]]></title><link>https://blog.csdn.net/vanpire110/article/details/16830101</link><guid>https://blog.csdn.net/vanpire110/article/details/16830101</guid><author>vanpire110</author><pubDate>Tue, 19 Nov 2013 20:26:31 +0800</pubDate><description><![CDATA[无意中发现source insight有宏信息，具体的编码规则可以在 source insight下面按 F1，查看Macro Language Guide进行参考，查阅
此版本是基于source insight内部的base工程，也参考了网上的资料
主要就是解析字符串，使用了 strmid()  strtrunc()函数来裁剪字符串
在此记录一下...
/*---------------]]></description><category></category></item><item><title><![CDATA[ls -l 文件/目录]]></title><link>https://blog.csdn.net/vanpire110/article/details/7989738</link><guid>https://blog.csdn.net/vanpire110/article/details/7989738</guid><author>vanpire110</author><pubDate>Mon, 17 Sep 2012 22:51:13 +0800</pubDate><description><![CDATA[/** @file      my_ls.c 
 *  @brief     实现ls -l []这个功能
 *  @note      通过这个函数能够获取文件的信息并在终端显示
 *  @author    
 *  @date      
 *  @version   v1.0
 */

#include 
#include 
#include 
#include 
#include 
#i]]></description><category></category></item><item><title><![CDATA[哲学家问题   POSIX 信号量]]></title><link>https://blog.csdn.net/vanpire110/article/details/7989716</link><guid>https://blog.csdn.net/vanpire110/article/details/7989716</guid><author>vanpire110</author><pubDate>Mon, 17 Sep 2012 22:46:35 +0800</pubDate><description><![CDATA[学习了使用POSIX信号量来解决哲学家问题，代码及注释如下：
/** @file      philosopher_thread.c
 *  @brief     模拟哲学家思考和吃饭问题
 *  @note      
 *  @author
 *  @date
 *  @version   v1.0
 */

#include 
#include 
#include 
#include 
#]]></description><category></category></item><item><title><![CDATA[夜深]]></title><link>https://blog.csdn.net/vanpire110/article/details/7931319</link><guid>https://blog.csdn.net/vanpire110/article/details/7931319</guid><author>vanpire110</author><pubDate>Sat, 01 Sep 2012 02:19:45 +0800</pubDate><description><![CDATA[深夜自己一个人睡不着，坐在阳台上，吹着风，看着月亮，好圆，好亮，又快中秋了吧....
        一个人在外面独自奋斗，还是会有点孤独的....]]></description><category></category></item><item><title><![CDATA[TCP UDP 同步数据]]></title><link>https://blog.csdn.net/vanpire110/article/details/7931132</link><guid>https://blog.csdn.net/vanpire110/article/details/7931132</guid><author>vanpire110</author><pubDate>Fri, 31 Aug 2012 23:31:01 +0800</pubDate><description><![CDATA[前段时间自己在写一个基于TCP/UDP的文件传输小程序，就是客户端输入文件名之后服务器能够接收。
开始由于没有构思很仔细，在传递文件信息和文件内容的时候总是不能够很成功，因为第一次传送的是文件信息，但是之后传送的是文件的内容，就是这两步区分不是很好，之后还是突然经过一帅哥提醒了一下，发现在TCP中客户端第一次可以发送文件信息，于是自己创建了一个结构体：
/** @struct fileInfo]]></description><category></category></item><item><title><![CDATA[创建指定大小的文件]]></title><link>https://blog.csdn.net/vanpire110/article/details/7931093</link><guid>https://blog.csdn.net/vanpire110/article/details/7931093</guid><author>vanpire110</author><pubDate>Fri, 31 Aug 2012 22:54:31 +0800</pubDate><description><![CDATA[#include 
#include 
#include 




int main(int argc, char *argv[])
{
    FILE *fp;
    int writeSize = 0;
int a = 1;
    int fileSize = 0;


    fp = fopen("test.txt", "w+");
if ( NULL == fp )
{
   fp]]></description><category></category></item><item><title><![CDATA[消息队列  多线程 linux]]></title><link>https://blog.csdn.net/vanpire110/article/details/7931086</link><guid>https://blog.csdn.net/vanpire110/article/details/7931086</guid><author>vanpire110</author><pubDate>Fri, 31 Aug 2012 22:48:48 +0800</pubDate><description><![CDATA[这些天自己在学习消息队列的使用，经过几天的琢磨，总算了解了怎么使用了，趁现在思路清晰把自己的过程记录下来供自己以后查阅。

工作原理：
首先通过唯一标识创建消息队列，之后所有的线程都监听消息队列中相对应的消息类型，当有消息产生的时候就出发接收函数，主线程只需要通过发送函数发送到消息队列就可以。这样，就实现了多线程之间的通信。

需要使用的头文件：
#include 
#include]]></description><category></category></item><item><title><![CDATA[联合类型与只有叶子节点的树]]></title><link>https://blog.csdn.net/vanpire110/article/details/7032527</link><guid>https://blog.csdn.net/vanpire110/article/details/7032527</guid><author>vanpire110</author><pubDate>Thu, 01 Dec 2011 21:59:32 +0800</pubDate><description><![CDATA[今天看书看到了联合类型的时候看到一个挺有趣的东西，也花费了我和室友一些时间去讨论，也学习了。
      假设的是一个实现一个二叉树的数据结构，每个叶子都有一个double类型的数据值，而每个内部节点都有指向两个孩子节点的指针，但是没有数据，一般我们对树的节点声明如下：
      struct NODE_S
      {
            struct NODE_S *left;]]></description><category></category></item><item><title><![CDATA[C语言中栈的使用]]></title><link>https://blog.csdn.net/vanpire110/article/details/7026625</link><guid>https://blog.csdn.net/vanpire110/article/details/7026625</guid><author>vanpire110</author><pubDate>Wed, 30 Nov 2011 11:58:47 +0800</pubDate><description><![CDATA[以前不是很熟悉C语言中栈的使用，只知道是栈是从高地址到低地址增长，但是下面这个程序确实让人咋舌。
程序如下：

#include 
#include 


int main()
{
    char a[] = "123456789";
    char b[] = "1234";


    strcpy(b, a);


    printf("b = %s]]></description><category></category></item><item><title><![CDATA[huffman编码]]></title><link>https://blog.csdn.net/vanpire110/article/details/7026622</link><guid>https://blog.csdn.net/vanpire110/article/details/7026622</guid><author>vanpire110</author><pubDate>Wed, 30 Nov 2011 11:58:18 +0800</pubDate><description><![CDATA[总所周知huffman编码能有效的减小码长，其实现的思想如下：
    首先找出最小的两个数，求其和值为另一个数，插入到原数中，之后再从数中找出最小的两个，依次类推，直到最后一个数的概论为一结束。
我是用链表实现的，首先把所有的数存放到一个链表里面，从小到大的排序（用一个排序函数实现），之后去头结点和下一个节点合并为一个新的节点，查到链表的头部，两个节点分别为其左右孩子，左边的编码为0，右边的]]></description><category></category></item><item><title><![CDATA[QT链接库中类的导出，以及使用]]></title><link>https://blog.csdn.net/vanpire110/article/details/7026607</link><guid>https://blog.csdn.net/vanpire110/article/details/7026607</guid><author>vanpire110</author><pubDate>Wed, 30 Nov 2011 11:55:20 +0800</pubDate><description><![CDATA[主体思路如下：
      我们的动态链接库建立一个基类，里面的函数全部是纯虚函数，之后再建立一个子类继承基类，实现里面的函数，最后导出一个函数，这个函数返回一个子类的对象但是却被强制转换为基类的基类指针。然后在应用程序中也对应建立一个基类，之后调用导出的函数，就可以使用子类实现的哪些功能了。


动态链接库的建立
myclass_lib.h
#ifndef MYCLASS_LIB_H]]></description><category></category></item><item><title><![CDATA[QT中动态链接库的建立，以及在QT中的引用，C++程序中的引用]]></title><link>https://blog.csdn.net/vanpire110/article/details/7026604</link><guid>https://blog.csdn.net/vanpire110/article/details/7026604</guid><author>vanpire110</author><pubDate>Wed, 30 Nov 2011 11:54:35 +0800</pubDate><description><![CDATA[首先感谢我的室友xqb的帮助，确实他平时也给了我很多的帮助。
      1.我们首先讲解QT中动态链接库的建立：
      由于不是很熟悉QT中动态链接库的建立过程，就参考网上的方法实现了标准C++链接库的建立，并没有采用QT中的方法，但是这个建立的动态链接库其他程序可以调用的。
     1.1 首先新建个C++library工程， File->New->Other Project->]]></description><category></category></item><item><title><![CDATA[转战CSDN]]></title><link>https://blog.csdn.net/vanpire110/article/details/7026575</link><guid>https://blog.csdn.net/vanpire110/article/details/7026575</guid><author>vanpire110</author><pubDate>Wed, 30 Nov 2011 11:50:45 +0800</pubDate><description><![CDATA[从现在开始，好好在这个博客上记录自己的学习，成长，蜕变的过程。
     
       学而知不足......
       虽然不知道以后的道路会怎么样，自信努力的过好每一天，我相信未来一定是属于我的。
       在此立下自己的誓言，让时间来见证。]]></description><category></category></item></channel></rss>