<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[giskook的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/giskook</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; giskook]]></copyright><item><title><![CDATA[bugs]]></title><link>https://blog.csdn.net/giskook/article/details/44650511</link><guid>https://blog.csdn.net/giskook/article/details/44650511</guid><author>giskook</author><pubDate>Thu, 26 Mar 2015 15:27:33 +0800</pubDate><description><![CDATA[Bugs 1.简单的bug,字符数组中32个字符，用作char* 长度不不到32还好，到了32后，就是灾难。以后再定义字符数组，要把0的位置留出来。]]></description><category></category></item><item><title><![CDATA[oracle 回收硬盘空间]]></title><link>https://blog.csdn.net/giskook/article/details/41961801</link><guid>https://blog.csdn.net/giskook/article/details/41961801</guid><author>giskook</author><pubDate>Tue, 16 Dec 2014 16:16:23 +0800</pubDate><description><![CDATA[问题:
oracle 把表都truncate后，硬盘空间resize不下来。
引用自: http://ierda.blog.163.com/blog/static/7746958720133103295264/

查询DBF文件、数据库空间、高水位线占用情况
select /*+ ordered use_hash(a,b,c) */
 a.file_id,
 a.file_name,]]></description><category></category></item><item><title><![CDATA[linux 调试]]></title><link>https://blog.csdn.net/giskook/article/details/41518177</link><guid>https://blog.csdn.net/giskook/article/details/41518177</guid><author>giskook</author><pubDate>Wed, 26 Nov 2014 16:44:08 +0800</pubDate><description><![CDATA[ulimit -c unlimited 崩溃生成core文件
gdb -c corefile ./excute.


记一个bug:一个线程通过malloc分配内存，将该内存放入到list中，另一个线程读取这个list，总是在特定的次数后发生free崩溃，提示:invalid pointer.
解决思路：跟踪 malloc 和 free.使用了__malloc_hook.__free_h]]></description><category></category></item><item><title><![CDATA[nginx 相关]]></title><link>https://blog.csdn.net/giskook/article/details/40614685</link><guid>https://blog.csdn.net/giskook/article/details/40614685</guid><author>giskook</author><pubDate>Thu, 30 Oct 2014 10:39:14 +0800</pubDate><description><![CDATA[http://wiki.nginx.org/Pitfalls
这个是个神奇的网站
try]]></description><category></category></item><item><title><![CDATA[git 使用]]></title><link>https://blog.csdn.net/giskook/article/details/40588367</link><guid>https://blog.csdn.net/giskook/article/details/40588367</guid><author>giskook</author><pubDate>Wed, 29 Oct 2014 16:36:14 +0800</pubDate><description><![CDATA[在github网站建立一个repo.
touch README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/GisKook/ngx_http_redirect_tile_module.git
git push -u origin m]]></description><category></category></item><item><title><![CDATA[valgrind 查找内存泄露]]></title><link>https://blog.csdn.net/giskook/article/details/38867189</link><guid>https://blog.csdn.net/giskook/article/details/38867189</guid><author>giskook</author><pubDate>Wed, 27 Aug 2014 11:07:47 +0800</pubDate><description><![CDATA[valgrind --leak-check=full --tool=memcheck --log-file=./log.log --show-leak-kinds=all ./test]]></description><category></category></item><item><title><![CDATA[linux postgresql]]></title><link>https://blog.csdn.net/giskook/article/details/38514327</link><guid>https://blog.csdn.net/giskook/article/details/38514327</guid><author>giskook</author><pubDate>Tue, 12 Aug 2014 13:59:22 +0800</pubDate><description><![CDATA[root:
yum install http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-redhat93-9.3-1.noarch.rpm]]></description><category></category></item><item><title><![CDATA[tcpdump 抓包，wireshark分析。]]></title><link>https://blog.csdn.net/giskook/article/details/38439857</link><guid>https://blog.csdn.net/giskook/article/details/38439857</guid><author>giskook</author><pubDate>Fri, 08 Aug 2014 15:16:28 +0800</pubDate><description><![CDATA[tcpdump udp -i eth1 -c 20 and src net 192.168.1.115 -w data.cap
抓udp协议，wangk]]></description><category></category></item><item><title><![CDATA[linux 安装 oracle 记录]]></title><link>https://blog.csdn.net/giskook/article/details/27330579</link><guid>https://blog.csdn.net/giskook/article/details/27330579</guid><author>giskook</author><pubDate>Wed, 28 May 2014 15:16:42 +0800</pubDate><description><![CDATA[1.安装成功，但是在配置数据库过程中出现了端口不可用的情况]]></description><category></category></item><item><title><![CDATA[qcad编译]]></title><link>https://blog.csdn.net/giskook/article/details/22042849</link><guid>https://blog.csdn.net/giskook/article/details/22042849</guid><author>giskook</author><pubDate>Tue, 25 Mar 2014 10:49:39 +0800</pubDate><description><![CDATA[1.git上抓qcad源码
2.配置vs2008，安装qt-win-opensource-4.8.5-vs2008.exe/qt-vs-addin-1.1.11-opensource.exe
3.qcad中打开*.pro文件。
4.系统path中放置qt路径，设置qtdir但是貌似没有用。
5.将qt路径下的相关的dll丢到qcad.exe所在目录，

6.编译。查看发现缺少插件，编译]]></description><category></category></item><item><title><![CDATA[The Magical container_of() Macro]]></title><link>https://blog.csdn.net/giskook/article/details/21167297</link><guid>https://blog.csdn.net/giskook/article/details/21167297</guid><author>giskook</author><pubDate>Thu, 13 Mar 2014 13:39:40 +0800</pubDate><description><![CDATA[The Magical container_of() Macro
When you begin with the kernel, and you start to look around and read the code, you will eventually come across this magical preprocessor construct.
What does it do?]]></description><category></category></item><item><title><![CDATA[汇编学习]]></title><link>https://blog.csdn.net/giskook/article/details/18599555</link><guid>https://blog.csdn.net/giskook/article/details/18599555</guid><author>giskook</author><pubDate>Tue, 21 Jan 2014 11:02:37 +0800</pubDate><description><![CDATA[gcc -01 -S -m32 xxx.c --->xxx.s "-S产生汇编代码”
gcc -01 -m32 -c xxx.c ---->xxx.o ”-c 产生并编译该汇编代码"
objdum -d xxx.o]]></description><category></category></item><item><title><![CDATA[vc9 没有pdb文件。]]></title><link>https://blog.csdn.net/giskook/article/details/18311933</link><guid>https://blog.csdn.net/giskook/article/details/18311933</guid><author>giskook</author><pubDate>Wed, 15 Jan 2014 15:37:30 +0800</pubDate><description><![CDATA[vc9 编译 curl 遇到的问题，总结一下。首先是编译静态库没问题，(是有问题，但是编译中没有报错，调用 的过程中出错了)。后来发现没有链接ws2_32.lib Wldap32.lib库，找这种库还是很费事的。关键是不了解网络编程。2.编出来的dll没有pdb文件，耽误了好长时间发现是在链接的选项下没有设置生成pdb文件。汗~~~ Linker--debuging--Generate debug]]></description><category></category></item><item><title><![CDATA[[转]文件包含 头文件 inline 编译]]></title><link>https://blog.csdn.net/giskook/article/details/17507219</link><guid>https://blog.csdn.net/giskook/article/details/17507219</guid><author>giskook</author><pubDate>Mon, 23 Dec 2013 16:37:42 +0800</pubDate><description><![CDATA[inline 函数遇到的问题。inline 在头文件中。不会编译？   

C语言中的函数或变量有且只有一个定义，但它可以有多个extern声明。唯一性
    规则也适用于常数定义，结构定义，类型定义，宏定义，只不过它们默认只对本
    单元可见；而函数和变量（函数外）的定义默认是全局可见的。

Linux0.11的目录：
      |-boot/
      |-fs/
]]></description><category></category></item><item><title><![CDATA[[转]likely unlikely zmq linux kernel]]></title><link>https://blog.csdn.net/giskook/article/details/17241209</link><guid>https://blog.csdn.net/giskook/article/details/17241209</guid><author>giskook</author><pubDate>Tue, 10 Dec 2013 11:09:45 +0800</pubDate><description><![CDATA[源:http://blog.csdn.net/rstevens/article/details/1798561

内核中的 likely() 与 unlikely()

在 2.6 内核中，随处可以见到 likely() 和 unlikely() 的身影，那么为什么要用它们？它们之间有什么区别？ 

首先要明确：
            if(likely(value)) 等价于 i]]></description><category></category></item><item><title><![CDATA[[转]自定义宏注释模板 vs2008]]></title><link>https://blog.csdn.net/giskook/article/details/17002305</link><guid>https://blog.csdn.net/giskook/article/details/17002305</guid><author>giskook</author><pubDate>Thu, 28 Nov 2013 10:48:51 +0800</pubDate><description><![CDATA[前段时间在用devcpp时，发现他有个插入快捷键，可以自定义注释模板，直接插入即可，感觉很方便。

但是我偏向于VS，所以就在CSDN上提问了，很高兴的找到了我需要的答案---自定义宏注释模板。

这里和大家分享下(虽然网上讲的很多了。。。)

 

程序注释的重要性毋庸置疑，一个大型的项目通常情况下都是几个软件工程师合作出来的成果，假如该项目中的代码注释不全，那会给将来的维护者带]]></description><category></category></item><item><title><![CDATA[二维数组与二级指针]]></title><link>https://blog.csdn.net/giskook/article/details/13622221</link><guid>https://blog.csdn.net/giskook/article/details/13622221</guid><author>giskook</author><pubDate>Wed, 30 Oct 2013 10:06:58 +0800</pubDate><description><![CDATA[#include 
#include 


int main(){
const int H= 10;
const int W= 10;

int array[H][W] = {0};

int (*p)[W] = array;
int **pp = (int**)array;
int (*_p)[W] = (int(*)[W])pp;
for (int i = 0; i ]]></description><category></category></item><item><title><![CDATA[redis初识]]></title><link>https://blog.csdn.net/giskook/article/details/11935711</link><guid>https://blog.csdn.net/giskook/article/details/11935711</guid><author>giskook</author><pubDate>Mon, 23 Sep 2013 16:17:46 +0800</pubDate><description><![CDATA[工作中用到了redis，为方便记录下来：
redis安装后，安装文件不能丢弃，因为他会读其中的配置文件，启动过程中加安装目录中的redis.conf
      redis.conf 中的各项port端口，databases最多的数据库个数，0开始。
      redis-cli是客户端，在里面可以练习命令。]]></description><category></category></item><item><title><![CDATA[zeromq centos 编译]]></title><link>https://blog.csdn.net/giskook/article/details/11629837</link><guid>https://blog.csdn.net/giskook/article/details/11629837</guid><author>giskook</author><pubDate>Fri, 13 Sep 2013 10:05:39 +0800</pubDate><description><![CDATA[1.git下载zeromq。
2.打开看不到configure，略读下readme。发觉要用到autoconf这个工具。个人理解就是autoconf生成configure，然后就可以像以前那样搞了。
3.生成到configure有问题。运行./autogen.sh成功生成configure
4.configure ---- make
遗留问题:
1.autoconf什么东东？
2.au]]></description><category></category></item><item><title><![CDATA[【转】tcpdump 使用]]></title><link>https://blog.csdn.net/giskook/article/details/11517619</link><guid>https://blog.csdn.net/giskook/article/details/11517619</guid><author>giskook</author><pubDate>Tue, 10 Sep 2013 10:13:58 +0800</pubDate><description><![CDATA[tcpdump 是linux上抓包到工具。这里简单到学习用下。
两种方式: man 一下。从网上找找相关方法。
第一个过滤条件： tcpdump 'tcp port 9877' 看到如下:
IP 192.168.0.116.navegaweb-port > 192.168.0.146.9877: Flags [S], seq 703388325, win 8192, options [mss]]></description><category></category></item></channel></rss>