<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[Bytes of Matrix]]></title> 
<link>http://blog.jibin.net/index.php</link> 
<description><![CDATA[Simple, Powerful]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[Bytes of Matrix]]></copyright>
<item>
<link>http://blog.jibin.net/post/25/</link>
<title><![CDATA[Ranorex Studio 测试工具破解注册工具 [Updated: 2009-05-31]]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[软件测试]]></category>
<pubDate>Sun, 10 May 2009 13:31:09 +0000</pubDate> 
<guid>http://blog.jibin.net/post/25/</guid> 
<description>
<![CDATA[ 
	最近更新了一下Ranorex.Keygen，以前提供的工具有个BUG(打开Ranorex Studio项目时候会加载失败)，可能有些朋友下载会去没能用成，估计要骂我了。顺道测试了一下 Ranorex 2.1.0.6243 这个版本，目前破解工具也是支持的。<br/><a href="attachment.php?fid=7">点击这里下载文件</a><span style="color: #DC143C;">最近2009-06-01更新，将Ranorex.Libs.dll 打入包内，供Ranorex.Keygen运行使用。</span><br/>PS: 顺便添加了一个保存License的按钮。:)<br/><br/>最近发现一个测试自动化的工具，Ranorex Studio 2. 参见<a href="http://www.ranorex.com/products/ranorex-premium.html" target="_blank">http://www.ranorex.com/products/ranorex-premium.html</a><br/>发现需要注册，软件是.Net写的，祭出Reflector，发现使用 Infralution.Licensing 做的注册保护，于是，经过若干天努力写出一个破解注册工具，有需要的朋友可以用一下，不过建议以学习为主，如果拿来正式使用的话，还是鼓励买正版软件或是用其他开源方案。<br/>破解的过程很有意思，对.Net的GAC和Reflecting又加深了一些认识，赞……，有空再写出来和大家分享一下。<br/>点击这儿下载工具： <a href="attachment.php?fid=7">点击这里下载文件</a><span style="color: #DC143C;">最近2009-06-01更新，将Ranorex.Libs.dll 打入包内，供Ranorex.Keygen运行使用。</span><br/>破解注册过程如下：<br/>先点击<strong>[破解可执行文件...] </strong>主要是替换了Ranorex.Core里面密钥，但是由于Ranorex Studio里面很多文件都是用了强命名，所以就有一堆的文件需要重新签名，重新链接引用的PublicKey Token。<br/><a href="http://blog.jibin.net/attachment.php?fid=3" target="_blank"><img src="http://blog.jibin.net/attachment.php?fid=3" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/>然后使用点击<strong>[生成License]</strong>生成注册信息<br/><a href="http://blog.jibin.net/attachment.php?fid=4" target="_blank"><img src="http://blog.jibin.net/attachment.php?fid=4" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/>将生成的注册信息保存为License文件，License.lic，打开Ranorex 的注册工具点击<strong>[Load License]</strong>，选择之前保存的文件，信息如下就说明成功了（看到绿色的钩子了吧，哈哈）。<br/><a href="http://blog.jibin.net/attachment.php?fid=5" target="_blank"><img src="http://blog.jibin.net/attachment.php?fid=5" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/>BTW: 我的Ranorex从官方下载的版本是 2.0.2.5891， 这个版本以上的版本理论上应该也可以破解成功。<br/><br/>Tags - <a href="http://blog.jibin.net/tags/ranorex/" rel="tag">ranorex</a> , <a href="http://blog.jibin.net/tags/keygen/" rel="tag">keygen</a> , <a href="http://blog.jibin.net/tags/crack/" rel="tag">crack</a> , <a href="http://blog.jibin.net/tags/%25E6%25B5%258B%25E8%25AF%2595%25E5%25B7%25A5%25E5%2585%25B7/" rel="tag">测试工具</a> , <a href="http://blog.jibin.net/tags/%25E7%25A0%25B4%25E8%25A7%25A3/" rel="tag">破解</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/24/</link>
<title><![CDATA[使用LeakDiag 检测内存泄漏 [入门级]]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[软件测试]]></category>
<pubDate>Thu, 23 Apr 2009 16:59:24 +0000</pubDate> 
<guid>http://blog.jibin.net/post/24/</guid> 
<description>
<![CDATA[ 
	工具：LeakDiag&nbsp;&nbsp;可以从微软的FTP进行下载： ftp://ftp.microsoft.com/PSS/Tools/Developer%20Support%20Tools/LeakDiag/<br/>leakdiag125.msi 下载后大约有1.7MB，缺省的安装目录是C:&#92;leakdiag<br/><br/>LeakDiag 目前支持六种类型的泄漏：<br/>Virtual Allocator<br/>Heap Allocator<br/>MPHeap Allocator<br/>COM AllocatorCoTaskMem<br/>COM Private Allocator<br/>C Runtime Allocator<br/><br/>LeakDiag拦截指定内存分配的调用并跟踪各种调用栈，它报告已分配但尚未释放的内存，这一信息允许逐个地排除内存泄露问题，以精确查看哪些组件进行了该分配。使用正确的调试符号，还可以查看分配内存的具体代码行数。<br/><br/>LeakDiag 和常见的内存测试工具不一致的地方是，它使用了微软的Detours 技术，常见的内存测试工具通常都在代码编译或者连接阶段来修改进行一些修改，进而对内存分配释放等操作进行截获。而Microsoft Detours就可以中断原有的执行过程转而执行你提供的detour代码或者是在之前加入一些代码然后继续执行原有代码。看起来就好像是在原有函数的入口处直接跳转到新代码了，而这是在运行期变更的。<br/><br/>接触一个最简单的例，有如下C代码，memleak.c：<br/><pre class="brush: c highlight: [9]]">
#include &lt;stdio.h&gt;
#include &lt;string.h&gt;

int main(void)
&#123;
&nbsp;&nbsp;char *p = NULL;
&nbsp;&nbsp;while (getc(stdin))
&nbsp;&nbsp;&#123;
&nbsp;&nbsp;&nbsp;&nbsp;p = (char *)malloc(1024);
&nbsp;&nbsp;&#125;
&#125;
</pre><br/>明眼人一看就知道问题出在哪儿了。<br/><br/>编译好，执行程序。然后在运行leakdiag。我们从进程列表中选出memleak.exe。点击"start" 开始检测，然后我们在memleak.exe的控制台上随便输入些东西，点击一下log按钮记录日志，然后stop 结束。<br/><a href="http://blog.jibin.net/attachment.php?fid=1" target="_blank"><img src="http://blog.jibin.net/attachment.php?fid=1" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/><br/>这时候就会在logs目录下生成一个XML的日志文件了。查看一下文件内容，关键信息如下（在LEAKS下）：<br/><pre class="brush: xml]">
&lt;FRAME num="0" dll="ntdll.dll" function ="CsrAllocateCaptureBuffer" offset="0x36" filename="" line="" addr="0x7C93EB8E" /&gt;
&lt;FRAME num="1" dll="kernel32.dll" function ="GetConsoleInputWaitHandle" offset="0x1DF" filename="" line="" addr="0x7C8727F8" /&gt;
&lt;FRAME num="2" dll="kernel32.dll" function ="ReadConsoleA" offset="0x3B" filename="" line="" addr="0x7C872A78" /&gt;
&lt;FRAME num="3" dll="kernel32.dll" function ="ReadFile" offset="0xA5" filename="" line="" addr="0x7C8018B7" /&gt;
&lt;FRAME num="4" dll="memleak.exe" function="" filename="" line="" addr="0x407f6b" offset="0x00007F6B" /&gt;
</pre><br/>调用的堆栈及代码地址信息被记录下来了，通过设置options里面的Symbol Search Path，将pdb所在的目录加进去，再次执行，就可以得到具体的代码行数了，如下：<br/><pre class="brush: xml]">
&lt;FRAME num="0" dll="memleak.exe" function ="_heap_alloc_base" offset="0xC2" filename="malloc.c" line="200" addr="0x403752" /&gt;
&lt;FRAME num="1" dll="memleak.exe" function ="_heap_alloc_dbg" offset="0x1A2" filename="dbgheap.c" line="378" addr="0x401362" /&gt;
&lt;FRAME num="2" dll="memleak.exe" function ="_nh_malloc_dbg" offset="0x19" filename="dbgheap.c" line="248" addr="0x401169" /&gt;
&lt;FRAME num="3" dll="memleak.exe" function ="malloc" offset="0x19" filename="dbgheap.c" line="130" addr="0x4010E9" /&gt;
&lt;FRAME num="4" dll="memleak.exe" function ="main" offset="0x76" filename="c:&#92;working&#92;temp&#92;memleak&#92;main.c" line="9" addr="0x401086" /&gt;
</pre><br/><br/>关于detours，参考： <a href="http://research.microsoft.com/en-us/projects/detours/" target="_blank">http://research.microsoft.com/en-us/projects/detours/</a><br/>Tags - <a href="http://blog.jibin.net/tags/%25E5%2586%2585%25E5%25AD%2598%25E6%25B3%2584%25E6%25BC%258F/" rel="tag">内存泄漏</a> , <a href="http://blog.jibin.net/tags/leakdiag/" rel="tag">leakdiag</a> , <a href="http://blog.jibin.net/tags/%25E8%25BD%25AF%25E4%25BB%25B6%25E6%25B5%258B%25E8%25AF%2595/" rel="tag">软件测试</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/23/</link>
<title><![CDATA[使用SWIG 扩展Python]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[Python]]></category>
<pubDate>Sat, 11 Apr 2009 08:58:21 +0000</pubDate> 
<guid>http://blog.jibin.net/post/23/</guid> 
<description>
<![CDATA[ 
	Python 可以用C/C++来写扩展，在已经有C实现代码的时候，用SWIG来自动转换将更加方便。<br/><br/>何为SWIG，SWIG 是Simplified Wrapper and Interface Generator 的缩写详细的信息可以参考 <a href="http://www.swig.org" target="_blank">http://www.swig.org</a>。<br/><br/>看一个简单例子有如下calc.h 和calc.c，一共实现了3个加法函数。我们现在要用将这三个函数实现为Python 的扩展。<br/><br/>calc.h<br/><pre class="brush: c]">
#ifndef __CALC_H
#define __CALC_H

typedef struct &#123;
&nbsp;&nbsp;&nbsp;&nbsp;int j;
&nbsp;&nbsp;&nbsp;&nbsp;int k;&nbsp;&nbsp; 
&#125; obj;

int add1(int a, int b);
void add2(int a, int b, int *c);
void add3(obj a, obj *b, obj *c);
#endif
</pre><br/>calc.c:<br/><pre class="brush: c]">
#include "calc.h"

int add1(int a, int b) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;return a + b;
&#125;

void add2(int a, int b, int *c) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;*c = a + b;
&#125;

void add3(obj a, obj *b, obj *c) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;c->j = a.j + b->j;
&nbsp;&nbsp;&nbsp;&nbsp;c->k = a.k + b->k;
&#125;
</pre><br/><br/>SWIG 需要编写一个.i为扩展名的接口文件。暂其叫calc.i 吧，内容如下：<br/><pre class="brush:plain]">
%module calctest

%&#123;
#include "calc.h"
%&#125;

%include "calc.h"
</pre><br/><br/>正常流程，我们需要使用swig命令来生成一个calc_wrap.c文件，然后使用编译环境来啊编译Python的模块。<br/>但是Python的Distribution模块已经可以继承编译工作和swig命令了，非常方便，编写一个setup.py，如下：<br/><pre class="brush:python]">
from distutils.core import setup, Extension
from os import environ

# swig's path add to current PATH.
environ["PATH"] = environ["PATH"] + ";C:&#92;Working&#92;swigtest&#92;swigwin-1.3.39"

# extension for python.
calc_module = Extension(
&nbsp;&nbsp;&nbsp;&nbsp;"_calctest",
&nbsp;&nbsp;&nbsp;&nbsp;sources = ["calc.i", "calc.c"],
&nbsp;&nbsp;&nbsp;&nbsp;swig_opts = [],
&nbsp;&nbsp;&nbsp;&nbsp;)


setup(
&nbsp;&nbsp;&nbsp;&nbsp;name="Calc",
&nbsp;&nbsp;&nbsp;&nbsp;version = "0.1.0",
&nbsp;&nbsp;&nbsp;&nbsp;description = "Calc test module",
&nbsp;&nbsp;&nbsp;&nbsp;author = "Matrix Ji",
&nbsp;&nbsp;&nbsp;&nbsp;author_email = "webmatrix.ji@gmail.com",
&nbsp;&nbsp;&nbsp;&nbsp;ext_modules = [calc_module],
&nbsp;&nbsp;&nbsp;&nbsp;py_modules = ["calctest"],
&nbsp;&nbsp;&nbsp;&nbsp;)
</pre><br/><br/>Extension执行的时候会自动调用swig来生成calc_wrap.c，然后在进行编译。安装上去进行测试吧：<br/>python setup.py install<br/>安装后site-packages目录下，就有了calctest.py 和 _calctest.pyd 了。calctest.pyc 是calctest.py 预编译的。<br/><br/>测试如下：<br/><pre class="brush:plain; light]">
>>> from calctest import add1
>>> add1(1,2)
3
>>></pre><br/><br/>接着，问题来了，add2有参数要传出啊，尽管Python的参数再传递的时候也是按照对象的指针在传递但是确不知道怎么写这个代码了。有办法了将传出参数作为返回值返回。需要在SWIG的接口文件里面进行类型映射了。可以直接使用SWIG自带的模板进行应用就可以了，修改calc.i 如下：<br/><br/><pre class="brush:plain; highlight:[7]]">
%module calctest

%&#123;
#include "calc.h"
%&#125;

%apply int *OUTPUT &#123;int *c&#125;

%include "calc.h"
</pre><br/><br/>int *OUTPUT是一个内嵌的模板，用来将int *的参数设置为传出，这样就为在执行的返回值中添加这个int型的返回值。是以添加列表的方式返回的。我们可以注意在calc_wrap.c里面生成的代码，如下：<br/><pre class="brush:c]">
if (SWIG_IsTmpObj(res3)) &#123;
&nbsp;&nbsp;&nbsp;&nbsp;resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_From_int((*arg3)));
&#125; else &#123;
&nbsp;&nbsp;&nbsp;&nbsp;int new_flags = SWIG_IsNewObj(res3) ? (SWIG_POINTER_OWN &#124;&nbsp;&nbsp;0 ) :&nbsp;&nbsp;0 ;
&nbsp;&nbsp;&nbsp;&nbsp;resultobj = SWIG_Python_AppendOutput(resultobj, SWIG_NewPointerObj((void*)(arg3), SWIGTYPE_p_int, new_flags));
&#125;
</pre><br/>编译后执行的结果如下：<br/><pre class="brush:plain; light: true]">
>>> from calctest import add1, add2, add3
>>> add2(1,2)
3
>>>
</pre><br/>>>><br/><br/>int *OUTPUT 可以有模板应用，可是obj是我们自己定义的结构体，我们如何保证add3的接口的转换很友好呢？其实由于SWIG的强大，SWIG已经自动将obj实现为一个class，因此可以直接使用了，测试代码如下：<br/><pre class="brush:python]">
from calctest import add3, obj

obj1 = obj()
obj2 = obj()
obj3 = obj()

obj1.j = 100;
obj1.k = 200;

obj2.j = 10;
obj2.k = 20;

print "j:%d, k:%d" % (obj3.j, obj3.k)
add3(obj1, obj2, obj3)
print "j:%d, k:%d" % (obj3.j, obj3.k)
</pre><br/>结果输出：<br/><pre class="brush:plain; light: true]">
j:0, k:0
j:110, k:220
</pre><br/>Tags - <a href="http://blog.jibin.net/tags/python/" rel="tag">python</a> , <a href="http://blog.jibin.net/tags/swig/" rel="tag">swig</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/22/</link>
<title><![CDATA[入职第二个月小结 vs 工作4年多后的感叹]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[职业生涯]]></category>
<pubDate>Sun, 05 Apr 2009 06:52:31 +0000</pubDate> 
<guid>http://blog.jibin.net/post/22/</guid> 
<description>
<![CDATA[ 
	<span style="color: #008000;">整理邮箱翻出一个很久以前写的工作小结，那时还是新员工，每个月要写小结，看了看，感觉几年以后差距挺大的…… </span><br/><br/>特地用和<span style="color: #0000FF;">蓝色</span>来<span style="color: #FFA500;">橙色</span>写，对比一下。<br/><br/><span style="color: #0000FF;">入职第二个月小结</span><br/><span style="color: #FFA500;">工作4年多后的感叹</span><br/><br/><span style="color: #0000FF;">嵇斌（02135）</span><br/><span style="color: #FFA500;">嵇斌（02135）</span><br/><span style="color: #0000FF;">时间过得真快，在不知不觉中又一个月过去了。似乎时间总是喜欢作弄人，在你需要他的时候，他是那样的吝啬。这个月始终都感觉到一种紧迫感。可以说我已经真真切切的体会到了所谓的压力。当然这也让我更多地体会到了来华为3Com工作所能给人带来的一种激情。</span><br/><br/><span style="color: #FFA500;">时间过得很快又很慢，4年多了，才4年多了还是已经4年多了？似乎时间总是飘忽不定的：当我回忆同时进公司的XDJM的时候，时间好快，一眨眼，只剩下JM了，XD全跑光了；当我试图从脑子里搜索几年来的收获时，时间好快，好多东西都没弄清楚，4年多就过去了；而漫长4年多之后，我的工作激情似乎已经不在了，就快体会不到压力了，4年多漫长已经让我差点忘了4年多钱的工作激情，以及现在的H3C原来就是曾经的华为3Com。</span><br/><br/><br/><span style="color: #0000FF;">工作绝非是所见即所得。这个月的工作总的来说是我体会到了有时候很多事情并非你所想即所得；也不是所见即所得。“What is you see is what you get”这句话在很多设计类软件里，你都可以看见他的影子。但是在华为3Com的工作中，我想很少会有这么直接的事。凡事都要思考，我在最近的一次安装设备的过程中，就犯了遇事不思考的错误，只是简单根据以前的文档来执行，结过自然是吃了不少苦头。在经历了多次失败，我认真地总结了失败原因，在查阅了相关资料和向同组兄弟取经的基础上，终于总结出了安装IDS设备的一套比较合理和方便的步骤。并整理出了文档。安装设备从以往的文档来看是很简单的事情，但做起来如果只是一味的照搬照做却也不是那么简单。</span><br/><br/><span style="color: #FFA500;">工作的确是所见非即所得的，同时往往工作也是非可见、非可得的。正如同考评的好坏，往往让我不得其解，可见？可得？正如同数次的产品线的变动，百思似得其解亦非解。想当初，雄心壮志，到头来大丈夫焉能不为五斗米折腰。现在看来一味的照搬照做看来是还是比较稳妥的，思考是有代价的。然既已如此，代价总是要付出，否则有点对不起这五斗米了。自然前行的道路艰难，可见乎可得乎。</span><br/><br/><span style="color: #0000FF;">从枯燥中感受乐趣。最近的工作，总的来说，感觉比较枯燥。或许工作对于我们来说都是枯燥的，但是我们要从枯燥的工作中找到乐趣。这点有时很难做到，但是我想我们一直在努力。上个月的工作中很大一段时间，我在编写产品命令行手册和进行翻译的检视。可以说这对我来说是比较枯燥的。起初十分的无味。但是后来我找到了一点乐趣点，在编写命令手册的时候我同时对相关的命令逐一测试，由此还发现了几个bug。使得写命令手册的工作也变得不像先前的那样无味了。我想以后的工作可能并非是我们所想象的，当然也不会都是我们所希望的比较有挑战性或是自己很有乐趣的工作，但是我们要从中发掘出乐趣，以一种愉快的心情去迎接工作，以一种积极的心态去挑战工作。</span><br/><br/><span style="color: #FFA500;">枯燥就是枯燥，乐趣才是乐趣。枯燥的事情归根结底还是枯燥的，大部分时间里面工作总是枯燥的，并且是很难感受乐趣的。大部分时间里面没有成就感的工作中能够有的乐趣唯独是对技术的执着了吧。当然严格意义上来说，我也不是一个天生就喜欢Coding，喜欢Testing的人，然而工作已经枯燥，只能以此寻了罢了。很都时候搞不清楚自己的方向在哪，兴趣在哪，或许兴趣在于那份看似还可以的薪水吧，不想鄙视自己，但是自己确实值得鄙视。</span><br/><br/><span style="color: #0000FF;">共享万岁。我记得初来公司工作的时候很多问题都是自己专、自己啃接过是事半功倍。后来和大家熟了，遇到不懂的问题就问周围的大牛们。有时候自己遇到不明白的东西问别人比自己钻研效果要更好。而自己如果对某方面有了新的认识和见解提出来和大家分享，于人于己都是十分有益的。在华为3Com这点体会的特别深，有时感觉公司就像是学校一样。我想这是到公司后我最大的收获的来源吧！</span><br/><br/><span style="color: #FFA500;">若干年后才觉得，当初的想错了。共享不应该是仅仅突破个人，也要突破组织。然而这几年却让自己很失望，作为一个IP领域TOP3的公司在这点上的确不是很好，当然不应该评价公司的，毕竟公司要盈利，盈利是第一目的。反观自身，三番五次想要写些OpenSource的项目，却都有始无终了，或许对共享的理解还有待加深吧。前行、继续</span><br/>&nbsp;&nbsp;<br/><span style="color: #0000FF;">嵇斌 Sunday, August 29, 2004</span><br/><span style="color: #FFA500;">嵇斌 2009年 4月 5日 午后 </span><br/><br/><br/><br/><br/>Tags - <a href="http://blog.jibin.net/tags/%25E5%25B7%25A5%25E4%25BD%259C/" rel="tag">工作</a> , <a href="http://blog.jibin.net/tags/%25E5%25BF%2583%25E6%2583%2585%25E4%25B8%258D%25E9%2594%2599/" rel="tag">心情不错</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/21/</link>
<title><![CDATA[假如生命只剩下24小时]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[默认分类]]></category>
<pubDate>Sat, 03 May 2008 17:57:03 +0000</pubDate> 
<guid>http://blog.jibin.net/post/21/</guid> 
<description>
<![CDATA[ 
	假如生命只剩下24小时，我会做什么呢？<br/><br/>这个问题最早源于看了一本书之后，一本叫《假如没有明天》的书。看了之后，我试图每天用这个问题来“欺骗”自己，告诉自己剩下的时间不多了，想着天天把工作做好一点，把生活过的有质量一点。我开始给自己每周的工作做周密的计划，每天几点到几点做什么事情，每周必须有几样比较周密的事情需要搞定。生活上差不多也是如此，我开始早上起早锻炼身体，开始晚上不是一味的做无聊得事情，开始给母亲打电话，开始打开QQ和周围的朋友、老同学聊天。<br/><br/><br/><br/>似乎一些都进行的还不错，至少起初在我看来的确不错。然而在过了半个月之后，发现似乎又回到了起点。原本理好的屋子又开始反复，原本进行的十分顺利的工作开始，开始被各式各样的事情来打断。<br/><br/>我开始反思，为什么这种“欺骗”自己的方法没有什么作用呢？自己的计划永远是自己的计划，尽管自己排的好好的，但是别人不会管你这些。况且往往这个世界上有一种叫做“身不由己”的事情老是会伴随我们。然而死亡的力量应该是伟大的，我开始比较起那些所谓的“身不由己”的事情和“死亡”的紧要性来了。似乎答案很显而易见，看来问题的本质出现在我尚不能坦然面对“死亡”，潜意识里面还是不停地告诉自己“死亡”离自己还很远呢。总是安慰自己拖一天不是很严重。<br/><br/>这次五一回家，去看了看病床上的外公，老年痴呆，外加一些其他疾病，他看上去很瘦，并且家里人都已经不认识了。尚存的一点意识，维持着微弱的生命。顿时我意识到了，死亡并非很远，而且人活着不代表不处于死亡状态。医学上的活着仅仅意味你的大脑还能活动。总有一天我们也都会慢慢的老去，慢慢的死去。而世界并不会因我们的老去、死去，而停止或是减慢他的运转。<br/><br/>我开始思考如果真的明天我会死去，或者说只有24个小时让我生存在这个世界上我应该去做些什么呢？然而我发现这个问题很困难回答，因为当时间缩短到24小时的时候，我觉得不够。尽管每天都是24小时的时候，似乎时间总是不那么紧张。我开始思索着如果外公尚能从病床上起来，尚能正常的和我们生活一天，我想做些什么呢？我脑海里只想起一件事情，就是想陪他去杭州逛逛。外公年轻时在杭州上班，对西湖甚是怀念，我依稀记得6岁那年，外公外婆带着我在杭州玩了好几天。而后就是我念大二的时候，家里人都很忙，我陪着外公去杭州看眼睛，很匆忙，没有在杭州逗留，事后知道外公很想在杭州待一两天，看看、逛逛。而如今，这尽可能要成了他永久的遗憾了，虽然我不能知他是否尚能感到遗憾，我确信他会有的……<br/><br/>遗憾，多么让人不想拥有的东西啊。然而注定人会有遗憾的，当世界真只剩下24小时，我还会有遗憾么？我不知道，但我想会有的……<br/><br/>我似乎还没有找到我的答案，我会做什么，因为我始终认为24小时后我还将好好地活着。我始终认为下一个24小时不是最后的一个24小时，然而这一天终究会到来，一个又一个的24小时的逝去，留下的会是越来越多的遗憾么？ 我不知道，但我希望不是……<br/><br/>努力做好下一个24小时吧，不要让遗憾越来越多。这是我的答案么？我不知道，但我希望是的……<br/><br/>Tags - <a href="http://blog.jibin.net/tags/%25E5%25BF%2583%25E6%2583%2585%25E4%25B9%25B1/" rel="tag">心情乱</a> , <a href="http://blog.jibin.net/tags/%25E9%2581%2597%25E6%2586%25BE/" rel="tag">遗憾</a> , <a href="http://blog.jibin.net/tags/%25E7%2594%259F%25E5%2591%25BD/" rel="tag">生命</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/20/</link>
<title><![CDATA[wtomahawk 开工动员]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[流水账]]></category>
<pubDate>Sun, 27 Apr 2008 17:19:28 +0000</pubDate> 
<guid>http://blog.jibin.net/post/20/</guid> 
<description>
<![CDATA[ 
	工作需要以及自己兴趣爱好，开始写一个Windows下面的报文回放工具，主要用于测试IPS对攻击的检测。类似于tomahawk (<a href="http://www.tomahawktesttool.org/ " target="_blank">http://www.tomahawktesttool.org/ </a>) 。 <br/>只不过这个工具是Linux底下的，用起来不是很方便，平时很多人都不带Linux工作。 <br/><br/>于是想写功能差不多的Windows下面的版本，暂时叫wtomahawk，在Google Code下注册了项目：<br/><a href="http://code.google.com/p/wtomahawk/" target="_blank">http://code.google.com/p/wtomahawk/</a><br/>希望可以坚持下去把这个工具写好，并且维护下去。<br/><br/>这样说来明天开始晚上就得好好Coding了…… 加油 !!!<br/>Tags - <a href="http://blog.jibin.net/tags/wtomahawk/" rel="tag">wtomahawk</a> , <a href="http://blog.jibin.net/tags/ips/" rel="tag">ips</a> , <a href="http://blog.jibin.net/tags/tomahawk/" rel="tag">tomahawk</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/19/</link>
<title><![CDATA[使用SVN的Hook控制Commit的文件大小、类型及代码修改行数]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[开源工具]]></category>
<pubDate>Sun, 06 Apr 2008 14:07:27 +0000</pubDate> 
<guid>http://blog.jibin.net/post/19/</guid> 
<description>
<![CDATA[ 
	在CSDN上看到一个兄弟的提问，想要控制SVN上传（确切的说应该是提交）文件的大小及类型。想起来自己在管理Bug单的时候也有经常类似审计每次提交，单个C文件的代码变更行数的需求。于是写了一个pre-commit的hook，以备忘。<br/><br/>原贴的地址： <a href="http://topic.csdn.net/u/20080404/15/acc7c13b-9079-4241-bcc2-fdb7a80be4a8.html?seed=1212379939" target="_blank">http://topic.csdn.net/u/20080404/15/acc7c13b-9079-4241-bcc2-fdb7a80be4a8.html?seed=1212379939</a><br/><br/><pre class="brush: bash]">
#!/bin/sh

# repot && transaction arguments
REPOS="$1"
TXN="$2"

# svnlook command
SVNLOOK=/usr/local/bin/svnlook

# file filter: we only allow commit .c && .h files.
FILTER='&#92;.(c&#124;h)$'

# max file size in bytes after commit.
MAX_SIZE=102400

# max change per one commit
MAX_CHANGE_LINES=50

files=$($SVNLOOK changed -t $TXN $REPOS &#124; awk '&#123;print $2&#125;')

# check 
for f in $files
do
&nbsp;&nbsp;&nbsp;&nbsp;# check file type
&nbsp;&nbsp;&nbsp;&nbsp;if echo $f &#124; grep -Eq $FILTER ; then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;# valid file
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:
&nbsp;&nbsp;&nbsp;&nbsp;else
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo "File $f is not a .h or .c file" >> /dev/stderr
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit 1
&nbsp;&nbsp;&nbsp;&nbsp;fi

&nbsp;&nbsp;&nbsp;&nbsp;# check file size
&nbsp;&nbsp;&nbsp;&nbsp;filesize=$($SVNLOOK cat -t $TXN $REPOS $f &#124; wc -c)
&nbsp;&nbsp;&nbsp;&nbsp;if [ $filesize -gt $MAX_SIZE ] ; then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo "File $f is too large (must <= $MAX_SIZE)" >> /dev/stderr
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit 1
&nbsp;&nbsp;&nbsp;&nbsp;fi

&nbsp;&nbsp;&nbsp;&nbsp;# check change lines
&nbsp;&nbsp;&nbsp;&nbsp;changelines=$($SVNLOOK diff -t $TXN $REPOS $f &#124; grep -E '^(&#92;+&#124;-)' &#124; wc -l)
&nbsp;&nbsp;&nbsp;&nbsp;if [ $changelines -gt $MAX_CHANGE_LINES ] ; then
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo "File $f changes too much ($changelines lines, must <= $MAX_CHANGE_LINES)" >> /dev/stderr
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit 1
&nbsp;&nbsp;&nbsp;&nbsp;fi
done

exit 0
</pre><br/><br/><strong><span style="color: #B22222;"><br/>pre-commit 返回非0，则commit失败。<br/>错误信息为stderr的信息。<br/></span></strong><br/><br/><br/>发现svnlook 还是很强大的，有空得好好研究研究，还有什么奇妙功能可以深入挖掘之。<br/><br/>Tags - <a href="http://blog.jibin.net/tags/svn/" rel="tag">svn</a> , <a href="http://blog.jibin.net/tags/subversion/" rel="tag">subversion</a> , <a href="http://blog.jibin.net/tags/pre-commit/" rel="tag">pre-commit</a> , <a href="http://blog.jibin.net/tags/hook/" rel="tag">hook</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/18/</link>
<title><![CDATA[Wireshark under Mac OS X]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[杂七杂八]]></category>
<pubDate>Fri, 12 Oct 2007 20:26:49 +0000</pubDate> 
<guid>http://blog.jibin.net/post/18/</guid> 
<description>
<![CDATA[ 
	最近用多Mac OS X比较多，前两天突然想在Mac上抓些包，第一反应自然是想到了Wireshark (以前叫Ethereal)。 可是去官方网站并找不到编译好的版本。 好在有Google，一搜就找到了：<a href="http://www.finkconsulting.com/page7.php" target="_blank">http://www.finkconsulting.com/page7.php</a> 下载完后安装，可惜是基于 X11的，只能通过xterm来启动在term下：<br/><div class="code">/usr/local/bin/wireshark &amp;</div><br/><a href="http://blog.jibin.net/attachment/1192220626_0.png" target="_blank"><img src="http://blog.jibin.net/attachment/1192220626_0.png" class="insertimage" alt="点击在新窗口中浏览此图片" title="点击在新窗口中浏览此图片" border="0"/></a><br/><br/>不过解析报文好像特别快， 哈哈 <br/><br/>Tags - <a href="http://blog.jibin.net/tags/macos/" rel="tag">macos</a> , <a href="http://blog.jibin.net/tags/wireshark/" rel="tag">wireshark</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/16/</link>
<title><![CDATA[翻出一个若干年前的老贴：连载:我的本科四年[1-5]]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[我的故事]]></category>
<pubDate>Thu, 29 Mar 2007 15:23:50 +0000</pubDate> 
<guid>http://blog.jibin.net/post/16/</guid> 
<description>
<![CDATA[ 
	<a href="http://www.xici.net/b10244/d19242693.htm"><br/>http://www.xici.net/b10244/d19242693.htm<br/></a><br/><br/><strong>我的本科四年</strong><br/> <br/> <br/><span style="color: #8B0000;">一、写在毕业之前</span><br/> <br/>　　　 我想写这个东西的时候，实在是有些顾虑的：一是怕朋友们看了这个东西之后以为我在写个人自传，然后就说我这个人太喜欢炫耀（当然事实也是如此）；二是怕朋友们看了这东西后以为我在写遗书，毕竟在我们学校每年都有那么些不珍惜生命的家伙会有一些壮举。可是我仔细回顾了四年的本科生活，发现还是又不少东西是值得回忆的，并且我始终认为自己一直是一个被人羡慕的学生。这四年是一个由幼稚到成熟的四年，交织着幸福与痛苦、勤劳与懒惰、激情与颓废、成功与失败。我写下一些我的经历，希望可以给那些正在迷茫中的朋友们一点启示。我不是什么诗人，自然没有华丽的辞藻；我不是什么哲人，自然也没有什么人生哲理。我只是写下我的一些故事……<br/><br/><br/> <br/><span style="color: #8B0000;">二、大学之前</span><br/> <br/>　　　 我出生在浙江的一个小县城。父亲是是一名养路工人，养了一辈子的路，种了一辈子的树。母亲先前是代课教师，本来可以转正的。但是我出生后为了带我，加之父亲当时的收入也不错，于是就在家洗衣做饭，坐起了典型的家庭妇女。其实母亲是很适合教书的，好几次她带过课的学生来我家做客，都说母亲当年放弃了教师这个职业对自己是吃亏的。母亲也不是甘心闲在家里的人，在我三岁后也开过饭店，做过缝纫，可是都没有什么大成就。母亲每次都说是自己当时胆量太小，可我觉得是她放不下这个家。<br/> <br/>　　　 在我四岁那年，我就被送到了外婆家，外婆是一为老小学教师。外婆的调教自然令父母感到十分的放心和欣慰。惟一的意外就是我有一次一不小心摔了一交，碰到了左眼角，差点碰到了眼睛。不过正好应验了先前算名先生说我要破过相才好养的说法，母亲对此事也不会太伤心。母亲是十分相信算命的，我也受她的影响，总是相信时也、运也、命也。外婆家的基础使得我以后的小学六年都是在掌声和证书中度过的，直到最近老同学聚会时，还有同学说我当时简直就是他心中的偶像，还让我飘飘然了一回！<br/> <br/>　　　 六岁的时候我上了幼儿班，确切的说当时是五岁，因为当时必须要六岁才能上中班，母亲去找教导主任（当年的同事）说情，教导主任见我聪明机灵就说：没事，去报名吧！母亲交代的好好的，如果老师问我几岁就说六岁。可是老师一问起来我就什么都吐出来了，还给母亲也套了个欺骗的帽子。幼儿班的记忆没什么了，只记得当时的老师曹老师。那时父亲有时接我来晚了，她就让我去她家里吃饭，我平时有不淘气，自然也是得到她特别的宠爱，把我当自己的儿子一样看待。我记得当时还说过拿第一个月工资的时候就要去看她。<br/> <br/>　　　 两年的幼儿班使我认识了一位好老师、结识不少铁哥们、学习做人的基本道理。现在想来，直到现在，人生最有用的东西都是从幼儿班学来的，真不知道这是不是对中国教育体制最好的讽刺。可是毕竟幼儿班只有短暂的两年。七岁那年我就迈上了漫长的六年小学征程，也就是从那一刻起开始了，开始了我的辉煌史。<br/> <br/>　　　 刚入小学的时候，正好赶上家里造房子，那个时候，能批块地自己造房子的家庭可是不多的。当然也不像现在，有那么多的楼盘和商品住房。记得那时，批块地要跑好多关系的，父亲当时也是很有威望的人，搞下来也没什么问题。当时很多人都不懂为什么要造房子，好端端的单位的房子住着不很好吗。可是后来的事实证明父母决定的是正确，当然当时他们也没有意识到现在房价、地价会像卫星一样高。<br/> <br/>　　　 当时小学有两个铁哥们从幼儿班一直同班到小学毕业。一个哥们是华，就住我家附近，幼儿班是经常一起回家。小学一年级的时候还经常在回家的路上去工地的石灰池玩，每次都搞得混声白得像雪人一样才回家。自然那时的屁股是经常挨板子的，华也不例外。两个人也经常有闹翻打架的时候。华的父亲常年开车在外，母亲又经常加班，华经常是有了上顿没下顿。我母亲就经常让他来我家吃饭。我们两个人学习还都不错，可是在一起的时候，从来就是玩的。后来可能由于家庭离异原因，华变得孤独了，上了初中后就很少和我们在一起玩，经常和当时社会的一些个小混混一起。直到有一次他被人用刀砍了，我想去医院看他，可那时是在已经找不到什么理由了来说服自己了。另外一个铁杆是星，他与我同学的时间更长，一直到初中毕业都同班，现在还经常联系。他是属于那种学习刻苦、成绩优异，而且一看就有良好家教的好学生，自然三好学生这种东西在他手里就像过年的红包一样（只是年前年后的问题）。<br/> <br/>　　　 小学的学习对于我这种四岁时就学玩四年级东西的变态人来说，实在是太过于苦闷了。可是搞笑的事情也是有的，那时，刚学乘法口诀的时候，那是已经教到2×6=12了，可是3×4=12是还没有教过的。有一次考试考12=__×__我填了个3×4，老师居然批我错！现在想起来还真是有意思……<br/> <br/>　　　 小学三好学生拿得不多，没办法谁叫我天生体质弱，又不肯锻炼呢！年年学习积极分子，不过奥数竞赛的证书到时不少，还差点就上中科大的天才班……<br/> <br/>　　　 小学四年级的时候，父亲病故了，这对于当时的家庭是个不小的打击，母亲为了支撑当时的家庭，不得不又做起裁缝，因为做老师的机会错过了是不会在来的。母亲这一生为了我，为了这个家庭做出的牺牲是不少的。有时总觉得自己欠了她很多很多，可是母亲每次总说是她上辈子欠下的，现在是来还的。<br/> <br/>　　　 我在度过了最后两年小学生活之后就上了初中的重点班。当时的班主任的严格是出了名的，经常被全班留校，有时还搞民主检举揭发，简直就是没人性到了极点。不过像我这样的数学天才，绝对是掌上明珠，当然也有恨铁不成钢的时候，我被他批评是家常便饭。初中的老师没有什么印象特别深的，当然老师对我都不错。其实我人缘一直很好，无论是中学还是大学，无论和老师还是同学，这点也许是最叫人羡慕的……<br/> <br/>　　　 初中有几个兄弟，全是球迷。小戚、星（小学就是铁杆了），韦哥平时都玩的很疯，小戚还经常讲些黄色笑话消遣消遣。<br/> <br/>　　　 初中毕业前，我们面临着中考的艰巨任务，我在模拟考考得一塌糊涂，差点没资格去考当时县中学的提前考，还好有几个那么志气高的牛人要考市中学的，放弃了提前考的机会，我才侥幸入围。不过是金子总是会发光的，我在自以为发挥的一般的时候，成绩出来了，我居然碰了个全县第十。一起考的几个兄弟，全部上了线。<br/> <br/>　　　 说起前面提到的牛人，我们重点班自然是有不少的。小旭就是其中一个，小旭是我们班的语文科代表。三年初中，我和星的死敌，我们两个对于语文老师布置的每周两篇的周记是深恶而痛绝之的。当时其他科目的科代表都是自己人，不是一起踢球的就是一起上课聊天的。可就是有这么个负责的语文科代表放在那儿，老是监督着你要交那个作业。吵架是家常便饭，有一次我和星还合谋把她的课堂笔记给拿过来扔了。当时小戚就说小旭对我有意思，我呢，则是不当那么一回事。还说小戚是“瞎说，妄想众口烁金、积毁销骨”。直到有那么一次，晚上班主任把几个基础不错的同学喊学校去考试。咳！这在我们那个班主任手里时十分合理的，而且总是说是为我们好。考试考得很晚，考完了都九点多了（这个时间在大学里估计都不算晚上），我们从二楼的教室下楼梯。当时楼梯的灯关了很黑！大家都在那儿尖叫（到了大学之后才明白，那是因为人有时压抑久了）。这时突然有个人抓住了我的手臂，“啊！好黑啊”，我知道小旭下楼梯的时候一直走在我边上的。我当时不知是不是吓傻了！像是触电般的把她的手挪开了。我也是后来回忆起这段的时候才觉得这很浪漫，有人看了这里一定要问那么后来呢？后来？后来什么都没有啊！世界上最浪漫的就是没有后来……<br/> <br/>高中的三年实在是不堪回首三年，我不知道是不是我人生最失意的三年。三年里，我没有一个真正的朋友，当然我认识了日京，严格的说，她是我的第一个Girlfriend 。我在高中里几乎遭遇了所有的失败，当然除了在体育上由于天天踢球，我从原来那个弱不禁风的小子变成了校运会时班级的功臣。高考对于我来说同样是失败，实在不愿意去再读一年无聊得高四，只好在知道了考试成绩之后，在第二批的第一志愿填上了南京邮电学院通信工程系，很不幸的是，或者说是不幸中的万幸，我被录取了，从2000年9月开始我就来到了南京邮电学院（以下或简称南邮）通信工程系学习，而日京则去了杭州的某所大学……<br/><br/><br/><span style="color: #8B0000;">三、大学生活的开始：初到南京</span><br/> <br/>2000年的9月4号，我带着一点点的留恋离开我的家乡，在母亲的陪同下，来到了南京。这是我出生后跑的最北的一次。刚到南京，总觉得有一种说不出的感觉，那时的感情是复杂的，怎么说呢，毕竟还是孩子，有点想家……<br/> <br/>报名那天，真的很让我失望，学校的住宿环境简直让我感到十分后悔，不过看到当时绿油油的草皮也就欣慰了不少，我妈则是最了解我的，见我看到操场时的眼神，就说：“以后，我可不会管你踢球了，你要自己约束自己啊……”。<br/> <br/>宿舍一共六人，有江西的、福建的、广东的、天津的、上海的，当然还有我是浙江的。当时大家初次见面，都很客气地打了招呼。阿渣是江西的，年纪最小，后来做了老大。鬼六来自福建，个子最高，后来刚成立痞子舍时却做了老末。常昊，一看就北方来的，特憨的那种，天津人，不过他不会下围棋。飞鱼是上海户口，住在南京，比较有意思得一个人。除了我还有一个就是广东来的阿呆咯！他就不讲了，不是他的事没得讲，而是他的故事实在是太有意思，又太多了。以后可以出本书，书名就叫什么《阿呆正传》的，肯定赚钱。我想当时的我们和当时的家长们怎么也不会把我们这帮当时所谓的“天之骄子”和后来的“痞子舍”联系起来。当时给我映像最深刻的就是阿渣了，84年出生的，上大学也就17岁，太不可思议了。后来见得多了也就见怪不怪了，原来江西的小孩念书都很早。<br/> <br/>母亲第二天回去了，我们则要马上进入军训了。军训前一天，和对面宿舍的胖子红山（他的外号比较多，不过我觉得这个比较顺口）打了会篮球。晚上红山和飞鱼又逛了一通三牌楼。回来抽空写了两封信，一封是给母亲的，里面还写了几段给外公的，现在记不得写什么了，只记得外公后来回信说我长大了。第二封是写给一个叫晶的女生的，是个校友，比我低两届。毕业前答应人家做两年笔友的，后来自然是没有坚持下去，我记得一共也就写过她三封信，她估计时由于功课繁忙，也只回过两封。<br/> <br/>那天晚上我没睡好，想了很多，想到了学习，想到了考研，想到了以后的工作，想到了家，想到了日京……。不过想的最多的是考研，尽管最后我连报名都没有报。现在想来南邮真是磨灭人的意志的最佳地点，从当初的豪情壮志到现在的随遇而安也就不到四年的时间。事实上这时间更短。如果你不信的话，那么且看我们的意志是怎么开始磨灭的……<br/><br/><br/><span style="color: #8B0000;">四、一样的齐步走,不一样的感受：军训生活</span><br/> <br/>　　　 从初中开始，入学就不可避免的要进行军训，这在以前是半军事化管理的南邮来讲自然也是少不了的。从以前军训的经验来看，当时觉得军训就是体力活，基本属于蓝领。这点在大学的军训就更明显了，因为当时两个礼拜的军训还有36块钱的补贴，两个礼拜36块不属蓝领吗？可是毕竟是大学军训了吗，所以层次肯定是要比以前高一点的。除了必须的齐步走，正步走，跑步走……还多了理论课，还要学军歌，而且还是新歌呢！<br/> <br/>　　　 记得，理论课是在南邮的小礼堂开的，南邮的小礼堂就跟我们住的学五楼一样，是有些岁数的了。小礼堂经常开些晚会，搞些活动。一段时间，平时周末没被“征用”就拿来放些电影，基本是放两部，一部新片配一部老片。我到是没去过几次，一是没有看电影的兴趣，再则是没有女朋友。政治课讲了一通台海形势，当时好像两岸关系好像蛮紧张的。不过我倒是什么也没听，课间还认识了一个同班的浙江老乡，当时还很兴奋，互相留了姓名。现在想起来都觉得自己太幼稚、太搞笑。<br/> <br/>　　　 军歌是比较难唱的，实在难听啊！既没有老军歌的气势，也没有流行歌曲的顺耳的旋律。反正就是吼！不过基本上那年头，吼派还是蛮吃香的，像赵本山、潘长江什么的，不都是吼派的吗！<br/> <br/>　　　 军训一天下来，人已经累得不行了，可还是要在那边练习叠被子，每天要检查的。当时每个人有两条被子，我们都是叠好的一条，一直放着。用另外一条盖。我们宿舍就数二流叠的最好，因为他那天发高烧，回到宿舍，睡了一觉，被子就湿了，不要太听话。晚上洗澡是痛苦的，好多人一起挤啊！那时军训的衣服是租的，就一套，所以还不能洗，天天穿个臭衣服，不提了……<br/> <br/>　　　 军训也不是没有一点乐趣，有时也有说有笑的，不过经常性会被打短。当时一帮子男生当然也不会放过观察女生的好机会，其实有时觉得他们的眼光好像更渴望，只不过那时都不熟，也没得什么交流。军训结束前，还有一次两个班的联欢，算是大家认识一下吧！没多大意思，当时辅导员也来了，还露了一手，唱了首歌，后来知道他也就那么几首歌。当时我还不知道辅导员是什么概念。工科院校女生很少，我们也不例外，而且大一的女生，气质好的很少。<br/> <br/>　　　 班长猪头是个大好人，军训快结束的时候，班里要领新书，他居然喊了10个人过去，我很有幸也在其中，自然不要太爽……，其实也就逃了不到一个小时的站军姿。<br/> <br/>　　　 军训期间的英语分班考试当时还是蛮认真地，不过考得也不好。估计在这之后的大学的考试，我还真没什么认真对待过的。军训结束的时候，教官说的不多，我记得最清楚的就是，他说做任何事都要靠自己。军训结束的时候，我一点都不留恋，至少很多人表面上是留恋的，可我没有。我脑子里想的是马上要开始大学的学习了，当然我更想着“十一”的到来，想着回家……<br/><br/><br/><span style="color: #8B0000;">五、流星的辉煌：短暂的锋芒</span><br/> <br/>　　　 大一对于我来讲是幸运的，首先我幸运的考上了南邮，因为在高考之前我怎么也不会想到自己会来到这样一个“圣地”，而之后如果让我再去参加高考，估计我永远也不会踏入这所学校的；再则，大一这么短的时间还不至于把我意志给磨平。所以说大一我是幸运的，幸运带来的自然是辉煌，当然和以前的辉煌相比，显得是那样的苍白和无力。不过回忆起来，的确大学时光之中，那时我是最高兴的。我为人处事的两个原则就是：一要讲诚信，二就是要开心。最开心的时刻，即使在别人眼里看着是平庸甚至是失败的又怎么样呢？自己看来还不是最大的成功吗？<br/> <br/>　　　 刚进大学的时候我对数学还是很感兴趣的，虽然高考让我对数学伤透了心。记得讲高数的老师叫周华，是个蛮负责的老师，课讲得也不错，最好的一点就是她不逮作业。高数第一次期中的卷子考得很难，当然这是据说了，因为我觉得蛮简单的。当时正好监考老师里头有我们的辅导员，做到一个大题时，先在记不清了，好像是做到第七题吧！我们辅导员突然说第六题先放一放，说先做后面的。我当时就郁闷了，我还以为第六题不用做呢，我岂不白做。过了不久，两个数学组老家伙商量了一通，说第六题没问题。我当时就觉得这个辅导员有意思，蛮水的，还喜欢现。当时也不会想到，站在讲台上一脸严肃的辅导员，后来尽然和我成了哥们。第一次考试，当然很谨慎，考完了看了一遍又一遍，最后还是做满了两个小时才交卷。<br/> <br/>考完了出来，正好碰到了红山，看他当时的表情我就觉得他很委屈。因为考试前半个月，他还拉着我去无线楼自习看高数的，我印象中他还蛮认真的。无线楼据说是南邮师生亲手建起来，一砖一瓦都凝聚着南邮人的智慧和汗水。我是没有机会经历那样热火朝天的场面的，只能在那儿上上课。无线楼一共有四层，共八个大教室。那时，每天晚上被红山拉出去之后看了不到20分钟的书后，我就趴在书桌上开始呼呼大睡起来，有时口水还涂满了书。直到红山喊我回去了，才醒来。<br/> <br/>其实从八点到十点这段时间要睡觉的习惯是从小学就有了的，小学八点做完家庭作业就睡觉，到了十点就会爬起来看电视。后来参加数奥竞赛的时候就改成了做数学题，我记得当时在新华书店已经找不到我没做过的数奥的辅导书籍了。初中，我是属于那种典型的夜猫，每晚看书到十二点以后，当然八点后一定要睡一会儿，这样才会更有精神。上了高中，有了夜自修，睡觉就转移到了课桌上，质量当然不好。到家后，题做得少了，看书也成了催眠的活动，更多的是和日京在聊天（电话）。有时偶尔周末有空，两个人一起去看电影，我总会看一半就睡着了。大学之后，其实八点到十点的时间，基本去了网吧，从某种含义上来讲，这也是一种沉睡，唯一不同时十点过后经常醒不来……<br/> <br/>大一还是很少去网吧的，也比较好学，记得熄了灯后，有时还和红山一起看书，飞鱼有时也一起看的。回想起来，很让人怀念的。<br/> <br/>高数考完后，大概过了一个礼拜，期中考试的成绩都出来了，红山很不幸——挂了（相信很多人都知道这和红灯是一个意思），飞鱼好像也“中彩”了。我考了九十多，尽管这个分数已经不低了（事实上这是我大学必修课唯一的一次上九十），当时还觉得自己没发挥好。记得当时有考100的，是个女生叫刘珍珍来着，真的很猛。<br/> <br/>期中考试后，就是要举行校运会了。当时觉得很不理解的是何导（辅导员）对此似乎十分重视。我当时对自己是很有信心的，报了400和800。可是我这么个小个子哪会被那个颇有身型的辅导员看中呢。就让跑了800，那天状态也不好，跑完就吐了，不过好歹跑了个第二。当时跑第一的叫李欣，我记得他在最后200米开始超越我的时候，还从身后拽我一把，感觉不爽。后来还有过几次碰面，这个人在学校里后来学生会混得不错。好像在学生会混的，不是体育就是文艺，总有一个是拿得出手的。当然像小甜甜那样文体双修的也是有的，小甜甜大一校运会很猛的，记得拿了第一哦！跑完800，自然400接力我是要上的，可是决赛前，我的眼角被桌角碰了一下，当时做了紧急处理就上去了，跑第一棒。当时2道的是二系97本的徐肖华，我好像被拉下了将近10米。徐肖华那时还是我们年级八班的班主任，人蛮不错的，有做大哥的风范，毕业后去了华为，也是浙江人。跑完后我立马喊了两个同学去了铁医，还好逢了5针，回来照照镜子，发现和小时后四岁的那4针，几乎是同一地方。<br/> <br/>其实我也就第一次校运会还可以，后来越来越老，就跑不过年轻人了……<br/> <br/>大一还踢了足协杯，感觉以后南邮再也没有过那样大型的足球赛了。当时我们和98专组了联队，我速度快踢前锋，还进过球。我们最后没能进八强，我记得那时有一个很勇猛的门将是98专的，有一场他没上，结果我替他，被人灌了5个……<br/> <br/>大一整天生活在希望和幻想中，想着要好好学习，想着要进科协，想着要做班干……好歹在下半学期做了个小班文委，院科协也算是挂了名，当然我很少去。大一的生活是无忧无虑的，同时也是充实的，但是就在我陶醉在快乐中的时候，等着我的会是什么呢？<br/> <br/><br/>Tags - <a href="http://blog.jibin.net/tags/%25E6%2588%2591%25E7%259A%2584%25E6%259C%25AC%25E7%25A7%2591%25E5%259B%259B%25E5%25B9%25B4/" rel="tag">我的本科四年</a>
]]>
</description>
</item><item>
<link>http://blog.jibin.net/post/15/</link>
<title><![CDATA[Using Picasa Web ]]></title> 
<author>matrix &lt;webmatrix.ji@gmail.com&gt;</author>
<category><![CDATA[流水账]]></category>
<pubDate>Sat, 02 Dec 2006 08:46:45 +0000</pubDate> 
<guid>http://blog.jibin.net/post/15/</guid> 
<description>
<![CDATA[ 
	<div style="text-align:center;width:194px;font-family:arial,sans-serif;font-size:83%"><div style="height:194px;background:url(http://picasaweb.google.com/f/img/transparent_album_background.gif) no-repeat left"><a href="http://picasaweb.google.com/webmatrix.ji/TrainingInUSA"><img src="http://lh4.google.com/image/webmatrix.ji/RXEjZ30gBgE/AAAAAAAAAQc/caGTDnyL2UY/s160-c/TrainingInUSA.jpg" width="160" height="160" style="border:none;padding:0px;margin-top:16px;"></a></div><a href="http://picasaweb.google.com/webmatrix.ji/TrainingInUSA"><div style="color:#4D4D4D;font-weight:bold;text-decoration:none;">Training in USA</div></a><div style="color:#808080"></div></div><br/><br/>哈哈，不多说了，<a href="http://picasaweb.google.com/" target="_blank">http://picasaweb.google.com/</a> 使用Gmail帐号就可以申请，250M的相册，很好用哦~~<br/>Tags - <a href="http://blog.jibin.net/tags/%25E7%259B%25B8%25E5%2586%258C/" rel="tag">相册</a> , <a href="http://blog.jibin.net/tags/picase/" rel="tag">picase</a> , <a href="http://blog.jibin.net/tags/%25E5%25BF%2583%25E6%2583%2585%25E4%25B8%258D%25E9%2594%2599/" rel="tag">心情不错</a>
]]>
</description>
</item>
</channel>
</rss>