2009年4月8日星期三

信号分析

这几天由于工作的关系,开始做这方面的研究,但由于一点基础都没有,所以举步维艰,折腾了一个多星期,基本上没什么进展,而且由于这几天人员情况会有变化,所以前竞争是不容乐观啊。这次先起个头,等有了个眉目再详细写写。

2009年3月25日星期三

鸟哥的linux私房菜-读后感(1)

1、有关磁盘分区:磁盘最多可以分为4个private,或者是3个private+1个extend。如果采用了如下分区方法:一个private+一个extend,并在extend下划分3个logic分区,那么这些分区对应的文件名分别为hda1,hda4,hda5,hda6,hda7,其中2、3预留给为做划分的2个private分区。

2009年3月22日星期日

ns2学习计划

还是要有计划的学习,不能看到哪算哪。所以,制定以下计划:
1、目的:了解aodv协议,编写相应脚本文件,并能够分析实验数据。
2、步骤:
1)复习ns2模拟一书:每天一小时,10天搞定
2)找个aodv的程序,掌握其程序代码,分析数据

2009年3月17日星期二

ns by example 程序调通

就是“add application and agent"那一节,年前就尝试过,但是由于当时对linux的编译一无所知,所以碰到了很小的一个问题,但就是没有办法解决,经过这几个月的linux学习后,再来弄这个就是易如反掌了,哈哈。
按照文档的说明一步步做就行,没有问题的,当时出问题,是由于ns2安装的方法不同,因此最后生成的ns文件并没有拷贝至/usr/local/bin目录下,使得运行的仍然是老的ns,所以无论如何修改都看不到效果。

2009年3月16日星期一

无线路由器级联

我是从邻居家的路由器上拉了根网线过来,在我自己家里又整了个无线路由器,也就是说两个路由器级联起来,一开始我也没有修改无线路由器的配置,就这么连上了也就能用了,可是后来不知怎么回事,经常会上不了网,邻居家的路由器也访问不了,但是如果跳开无线路由器,把网线直接连到电脑,是没问题的,因此,可以确认,是无线路由器配置的问题。我看了看配置界面,修改成如下配置就没问题。
1、把网线进线接无线路由器的WAN口。
2、无线路由器的配置界面:
2.1 WAN配置成静态IP,根据上一级的路由器填写内容。
2.2 DHCP配置成与上一级路由器不同的IP段。
这样,经过两级路由后,电脑已可以正常上网。

2009年3月13日星期五

tcl-debug的安装

对于编程来说,不调试是不可想象的,毕竟程序员也是人,没办法一次就能把程序搞定,ns的程序尤其难搞,因此安装个调试器就是必不可少的了。
ns由tcl和c++构成,因此调试器也需要两种了,c++的调试器没什么好说的,自然是gdb,这个的安装和使用大家应该都没什么问题。下面就是tcl的调试器了。
tcl-debug隆重登场,经过google,发现了一篇很好的安装手册,讲得真是仁至义尽,每一个能想到的问题都列了出来。不过,很不幸,我照着做得时候,还是出了状况,但是请放心,不是文档的问题,是我中间敲错了代码。不过奇怪的是,我把代码改过了以后,makefile文件还是老样子,不得已,我直接把makefile文件给改了,现在想来,估计把makefile文件删除,然后在重新configure一次,应该也能成功。

这是tcl-debug的安装手册和gdb的安装使用手册,感谢两位作者,我也打算把前一篇文章翻译成中文,以回馈社会。

2009年3月12日星期四

修改ns2中的C文件

这是个老问题了,年前就弄了好一阵子,但是无疾而终,这几天又捡了起来,终于成功了。
我要完成这么个功能,就是在ns2中添加几个协议,基本上是按照ns2 example来做的,但是执行脚本文件却不成功。后来发现,ns2根本就没有生成,还是原先的那个,经仔细查找,发现在/usr/local/bin下有个ns,然后在/usr/share/ns-2.30下还有个ns,前者路径加进了环境变量中,因此,通常输入ns,执行的都是/usr/local/bin下的ns,而这个ns是需要make install,才能生成的,所以才会有以前的那个结果。找到了问题的原因,解决起来就容易多了,如果不make install,则输入./ns启动ns。经实验,修改后的c文件,已能够正常的显示出修改后的结果。

通过这个过程,明白了文件类型以及可执行的含义,linux的搜索路径,编译过程,总之,获益颇多。

2009年3月10日星期二

linux学习日志

其实一直想有这么一个学习经历可以用来参考,在网上找了找,没找到,于是,决定把自己的学习的经历写下来,包括流水账和小结,其中流水账主要是记载干了些啥,小结可以每周做一次,总结下经验和教训。

2009年3月6日星期五

linux几问

学了一段时间的linux,但是发现自己还是有很多基本的问题都搞不定,比如:
1、软件的安装和卸载:linux下的软件一般采取二进制和源代码两种发布方式,二进制的安装程序和windows下类似,一般可使用yum和rpm两种方式安装,但由于依赖性的问题,一个rpm往往很难就可以安装成功,一般可以通过rpm命令了解需哪些依赖的包。源代码方式现在还没摸到头绪,估计需要对代码及makefile文件相当了解。
2、系统的裁剪:linux的一个最重要的优势就是可以裁剪功能以最适合当前的应用,这一方面可以节约系统的性能,另一方面也可以使系统更稳定。这方面也是还没有入门。
3、程序编制:这个我估计问题不大,毕竟我不需要搞出复杂的应用,一般只是守护进程就可以了。

如何安装gcc

如果安装linux时,没有安装开发工具,而且电脑没有网络支持,那么安装gcc将会是麻烦的事情,当然,如果知道了方法,那比windows下也难不了哪去。
1、找出linux的系统盘,在packets目录下,能看到无数个rpm文件,这就是二进制安装程序了,gcc就隐藏在其中。
2、使用 ls | grep gcc,你会得到若干个gcc的rpm包,我们需要安装的就是gcc-4.*.*这一个。
3、使用rpm -ivh gcc-4.*.*尝试安装,通常来说,linux会很遗憾的告诉你,有个依赖的包需要安装,通常会写明最低的版本号。注意,你如果是在图形界面使用双击安装的话,你将无法获得依赖包的名称,而只是显示“无法解决依赖性问题”,所以,linux不会命令是行不通的。建议把rpm命令好好看看,安装程序少不了啊。
4、顺藤摸瓜,按照第三点的提示信息,安装所需要的包,必要是可使用ls | grep 命令查找具体文件名,当然,使用TAB键可以自动补齐文件名的。

心得:linux下的程序安装有如下几种方法:
1、yum命令。这个方法比较省事儿,会自动解决依赖性,但是必须要能上网。
2、rpm命令。需手动安装各个依赖包。
3、源代码。就是下载下来源代码,然后配置、编译,一般说来,这种方法需要有相应的编译器支持。