这是一个离散系统仿真软件, 面向对象,模块华
安装
1) 先要安装GS
2) 安装OMNet++
2004/10/23
2004/08/01
文档管理系统
以前曾经找到一个很小巧的文档管理系统MyDms,支持很多不错的功能. 但仍缺乏一些对应大型文档系统的特性如CheckIn/CheckOut, Review等.
这里有一个OpenSource的系统http://kt-dms.sourceforge.net, 比MyDms大多了, 特性也多了很多, 值得一看.
这里有一个OpenSource的系统http://kt-dms.sourceforge.net, 比MyDms大多了, 特性也多了很多, 值得一看.
2004/06/27
留言本更新
无意发现留言的时候每次都要刷新一次才能看到表格页面(在sign.php), 不知怎么回事? 查了半天, 只发现和session有关, sign.php开头的地方有一个 session_start 调用. 去掉了就无需再刷新了, 可是去掉了之后, session里面记录的变量就丢了. 只好再一个一个将用到这个变量的地方都改了.
为什么session_start影响到页面显示, 我想不明白, 好像和语言编码有些关系, 当页面没有任何显示的时候, 用IE将这个空白页面保存下来, 可以看到完整的HTML, 只是开头的编码部分变成了unicode, 可我明明设的是gb2312..... 晕...
用Opera试了一下, 没这个问题, 可是大多数的人用的是IE.
为什么session_start影响到页面显示, 我想不明白, 好像和语言编码有些关系, 当页面没有任何显示的时候, 用IE将这个空白页面保存下来, 可以看到完整的HTML, 只是开头的编码部分变成了unicode, 可我明明设的是gb2312..... 晕...
用Opera试了一下, 没这个问题, 可是大多数的人用的是IE.
2004/06/05
LiveCD
LiveCD是指无需安装可以通过CD自启动的操作系统, 由于以CD为载体, 通常的LiveCD除了基本的操作系统外, 都带有应用软件. LiveCD的最大的好处是无需安装, 这样LiveCD可以应用于应急,恢复,演示,测试等许多场合. Knoppix就是基于Debian Linux的非常棒的LiveCD.
LiveCD世界中, 多以Linux为操作系统, 原因我想和Linux的开放以及极佳的弹性有关. 当然也有基于其他操作系统的, 如FreeBSD, Windows.(除Microsoft官方的WinPE以外, Windows LiveCD非常少见).
除了CD以外, LiveCD的思想延伸到DVD,MiniCD,USB Key等其他载体上, 就形成了LiveDVD, Live***等很多词汇, 不过以LiveCD最为常见.(我倒是很喜欢MiniCD, 就是那种小光盘, 或者长方形的光盘, 这样比较易携带).
关于LiveCD, wikipedia有很好的解释, 可供参考.
LiveCD世界中, 多以Linux为操作系统, 原因我想和Linux的开放以及极佳的弹性有关. 当然也有基于其他操作系统的, 如FreeBSD, Windows.(除Microsoft官方的WinPE以外, Windows LiveCD非常少见).
除了CD以外, LiveCD的思想延伸到DVD,MiniCD,USB Key等其他载体上, 就形成了LiveDVD, Live***等很多词汇, 不过以LiveCD最为常见.(我倒是很喜欢MiniCD, 就是那种小光盘, 或者长方形的光盘, 这样比较易携带).
关于LiveCD, wikipedia有很好的解释, 可供参考.
2004/06/01
2004/05/29
Hiren's BootCD
这是非常好的BootCD, 含有绝大多数最新版本的修复,检测,杀病毒工具. 如Partition Magic 8.2,Norton Ghost 8.0,McAfee Antivirus 4.32等. 官方网站在这里. 这张CD是英文的, 并不支持中文.
中文世界中, 无忧启动光盘是比较有名的BootCD, 可以全面支持中文, 不过收集的软件没有上面的Hiren CD全, 也不够新.
中文世界中, 无忧启动光盘是比较有名的BootCD, 可以全面支持中文, 不过收集的软件没有上面的Hiren CD全, 也不够新.
2004/05/28
Vmware & Knoppix
很久没有试过Linux了,最近试着用了Knoppix, 却给我极大的惊喜. 完全不同于以往的Red-hat, Mandrake给我的感觉, Knoppix无需安装(光盘引导), 自动硬件识别能力非常好, 在我的PC上可以识别几乎所有的硬件, 甚至是网通宽带上网的PPPoE, 非常漂亮的界面. 极丰富的软件. 看来是我落伍了. :) 可惜没有中文版.
更棒的是, 在VmWare下(一个虚拟PC软件), Knoppix可以流畅的运行(我的计算机只有256M内存), 可以光盘引导的方式运行, 也可以用iso虚拟的方式运行, 这样我就可以在Win2000和Linux下实时切换, 多么美好!
Knoppix可以定制, 不过很麻烦, 原因之一是因为Knoppix采用了cloop压缩技术将2G的软件压缩到700M的文件中, 这样在重新定制时就需要大量内存,硬盘来做压缩,解压缩. 不过网上有很多别人做好的版本, 通常成为remaster版本, 就看是否符合你的需求了.
更棒的是, 在VmWare下(一个虚拟PC软件), Knoppix可以流畅的运行(我的计算机只有256M内存), 可以光盘引导的方式运行, 也可以用iso虚拟的方式运行, 这样我就可以在Win2000和Linux下实时切换, 多么美好!
Knoppix可以定制, 不过很麻烦, 原因之一是因为Knoppix采用了cloop压缩技术将2G的软件压缩到700M的文件中, 这样在重新定制时就需要大量内存,硬盘来做压缩,解压缩. 不过网上有很多别人做好的版本, 通常成为remaster版本, 就看是否符合你的需求了.
2004/05/10
WorkFlow
WorkFlow是什么? WorkFlow是回答这样一个问题的系统: Who must do what, when and how?
WorkFlow(工作流/电子流)通常可以分两种, 基于Entity和基于Activity. 通常基于Entity的WorkFlow较易理解, 如文档评审流程, 这里Entity就是待评审的文档, 文档的多种状态决定WorkFlow的走向. 基于Activity的WorkFlow要复杂一些, 相应的描述能力也更强(也就是说基于Activity的WorkFlow更灵活).
WorkFlow的一个好的平台是Zope(基于对象的应用服务器).
WorkFlow(工作流/电子流)通常可以分两种, 基于Entity和基于Activity. 通常基于Entity的WorkFlow较易理解, 如文档评审流程, 这里Entity就是待评审的文档, 文档的多种状态决定WorkFlow的走向. 基于Activity的WorkFlow要复杂一些, 相应的描述能力也更强(也就是说基于Activity的WorkFlow更灵活).
WorkFlow的一个好的平台是Zope(基于对象的应用服务器).
2004/04/20
apache与cookie
apache的设置中有一项ServerName的设置,用来设置server的名字,通常如果你的web server只是自己测试用,这里可以使用127.0.0.1,或者localhost等,都可以工作正常。但如果这个server要被LAN中的其它机器访问,显然127.0.0.1和localhost就不行了,这时可以用这台计算机的windows名字,但有一个缺陷,如果用windows名字作为 ServerName,那么一般web网页可以访问,使用cookie的web页则可能存在问题,最佳的方法是将ServerName设置为计算机的 DNS名字,可惜LAN中的很多server并没有DNS名字,这时替代的方法是用web server的真实ip地址,当设置ServerName为ip地址时,使用cookie的网页不会有问题了,但问题是这样的名字很难记,而且不方便使用 DHCP了(ip地址一变,ServerName也要跟着改). 你仍然可以使用http://windowsname的方式方式server,apache会自动将URL转成http://ipaddress,这样就不用记住那长长的ip地址了。
2004/04/14
2004/04/09
将应用安装为NT服务
Windows NT(包括2000)中有服务功能,很多应用程序提供了将自己安装成系统服务的选项,比如MySql, 但有的应用程序(特别是一些服务程序)没有提供安装成系统服务的功能,这样用起来会不太方便,于是就是一些外壳程序可以完成将任意程序转换成系统服务的功能,比如cygrunsrv, 这实际上是cygwin的一个package,但在没有安装cygwin的环境下一样可以正常使用,可以用cygrunsrv将那些类服务的应用程序安装成windows服务。
2004/03/23
Java的反"汇编"
前面说到Java程序的反编译,那是指将Java的字节码反编译到源码,而今天我用IDA Pro试了一下,发现IDA居然可以非常好的将Java的class文件"反汇编"成字节码(相当于是Java虚拟机中的汇编语言了), 并且可读性非常好,使用IDA 4.1.5版本时,反汇编结果中的一些符号跳转不太正确,这应该是IDA的一个小问题,并不太影响使用。而使用IDA的高版本4.5.1时,跳转的功能都 正确了。
在看Java字节码的时候,必不可少需要一份参考手册,这里的不错http://mrl.nyu.edu/~meyer/jvmref/ref-Java.html, 不过还不够详细。
在看Java字节码的时候,必不可少需要一份参考手册,这里的不错http://mrl.nyu.edu/~meyer/jvmref/ref-Java.html, 不过还不够详细。
2004/03/21
Wiki
Wiki是什么?
Internet上最有名的Wiki应用要算Wiki百科全书了。
Wiki's home
Wiki Engies list
常见的几个个WikiEngines是TikiWiki,MediaWiki,PhpWiki,tavi,Wakka以及Wakka的hacker版本CooCooWakka
为什么大部分Wiki Engines不使用HTML格式,这里有非常准确的回答
Internet上最有名的Wiki应用要算Wiki百科全书了。
Wiki's home
Wiki Engies list
常见的几个个WikiEngines是TikiWiki,MediaWiki,PhpWiki,tavi,Wakka以及Wakka的hacker版本CooCooWakka
为什么大部分Wiki Engines不使用HTML格式,这里有非常准确的回答
2004/03/09
Cygwin
我一直把Cygwin当成是GNU/Linux在Windows下的移植,虽然去年就在我的机器上安装了Cygwin,不过没有找到什么需要在Cygwin下跑的软件,所以也一直没有怎么用过。最近因为要用一个WORD文档到HTML的转换工具wvWare,而它正好是在Linux下编译的,没有提供Win32的二进制档案,只好试着在Cygwin下编译,结果居然很顺利的通过了,运行也很正常,让我着实高兴了好一会。
用了一会儿Cygwin的shell--Bash,让我想起了大学时代上机时用的Unix环境,那时unix shell的强大就让我感觉到Dos的差距,现在用Cygwin的Bash和win2000的console相比,还是觉得Bash要好用。而 Cygwin有个最大的好处是可以在Bash下直接调用win32 console程序,并且可以照样用上Bash的输入输出重定向以及管道机制,这样就可以用Bash来完成许多windows下原来靠Dos cmd来做的工作,比如用shell脚本来代替windows的bat命令。
Cygwin还在不断发展,好像现在已经可以在Cygwin下面跑KDE,GNome等GUI程序了,也就是说这些东西也可以和win32的GUI和平共处了,我没有用过,不过觉得满神奇的。
用了一会儿Cygwin的shell--Bash,让我想起了大学时代上机时用的Unix环境,那时unix shell的强大就让我感觉到Dos的差距,现在用Cygwin的Bash和win2000的console相比,还是觉得Bash要好用。而 Cygwin有个最大的好处是可以在Bash下直接调用win32 console程序,并且可以照样用上Bash的输入输出重定向以及管道机制,这样就可以用Bash来完成许多windows下原来靠Dos cmd来做的工作,比如用shell脚本来代替windows的bat命令。
Cygwin还在不断发展,好像现在已经可以在Cygwin下面跑KDE,GNome等GUI程序了,也就是说这些东西也可以和win32的GUI和平共处了,我没有用过,不过觉得满神奇的。
2004/03/08
2004/03/06
jpg与反jpg
使用jpg可以达到很高的压缩率,我通常使用Photoshop的Save for web来存jpg文件,不过由于可选项不多,不方便在大小和质量间达到较好的平衡,我会用Ulead SmartSaver来做更多的优化。
反之,如果得到一个压缩率较高的jpg文件,在ps里放大,就会看到类似马赛克的"jpg特征", 使用ps除去这些可能要比较麻烦,可以用一个软件Jpeg enhancer,它可以全自动完成这些工作,并且做的不错。优化后的jpg可以重新Save为jpg文件,但要比之前的会大一些,不过个人觉得这种"反 jpg"的工作意义不是很大。
反之,如果得到一个压缩率较高的jpg文件,在ps里放大,就会看到类似马赛克的"jpg特征", 使用ps除去这些可能要比较麻烦,可以用一个软件Jpeg enhancer,它可以全自动完成这些工作,并且做的不错。优化后的jpg可以重新Save为jpg文件,但要比之前的会大一些,不过个人觉得这种"反 jpg"的工作意义不是很大。
2004/03/05
CHM格式帮助文件
CHM是微软Compiled HTML Help格式的缩写,使用这种格式做帮助文件有一些不错的特性,内嵌的目录、索引、搜索功能的支持,HTML格式的语法等,以至于CHM也成了一些电子书所用的格式。
通常可以使用免费的Microsoft HTML Help WorkShop来制作CHM文件,但稍嫌复杂,有一些小软件可以帮助简化CHM文件的制作,我用过Helpware FAR,感觉还不错,这是关于FAR使用的介绍。
通常可以使用免费的Microsoft HTML Help WorkShop来制作CHM文件,但稍嫌复杂,有一些小软件可以帮助简化CHM文件的制作,我用过Helpware FAR,感觉还不错,这是关于FAR使用的介绍。
2004/02/03
VLC的eMule插件
使用eMule下载视频文件时,对于下载中的part文件可以使用VLC播放器来预览(VLC是个非常棒的跨平台的free的媒体播放器),但由于 eMule对于part文件采用无序下载的方式,part文件中通常充满了大大小小的间隙,这些间隙都是填充着无效的数据,当播放器在播放part文件时,遇到这些间隙中的无效数据,则无法处理,播放就会处于停顿的状态,如果间隙太多或者太大,那么会造成系统类似死机状态(hanging),很麻烦。
而使用VLC的0.6.2版本则有可能解决这个问题,因为这个版本的VLC可以安装一个eMule part file access plugin, 这是一个VLC插件,可以在VLC打开part文件时自动生效,它会打开part文件对应的met文件,eMule会在met文件里记录相应part文件的有效信息(即文件的哪些部分有效,哪些部分无效),这个插件在从met文件中获取part文件的有效性后,就会使用所有有效的段落合成为一个虚拟的完整的视频文件给VLC,这样VLC在播放时就不会有问题了。
由于不同VLC版本对插件要求不同,目前这个插件只能工作于0.6.2版本的VLC下,最高版本0.7.0的VLC反而没有这个插件可用,不过相信很快就会有的。
而使用VLC的0.6.2版本则有可能解决这个问题,因为这个版本的VLC可以安装一个eMule part file access plugin, 这是一个VLC插件,可以在VLC打开part文件时自动生效,它会打开part文件对应的met文件,eMule会在met文件里记录相应part文件的有效信息(即文件的哪些部分有效,哪些部分无效),这个插件在从met文件中获取part文件的有效性后,就会使用所有有效的段落合成为一个虚拟的完整的视频文件给VLC,这样VLC在播放时就不会有问题了。
由于不同VLC版本对插件要求不同,目前这个插件只能工作于0.6.2版本的VLC下,最高版本0.7.0的VLC反而没有这个插件可用,不过相信很快就会有的。
2004/01/14
奇怪的Sql问题
今天发现我本地的Weblog的备份不能用了,一个帖子也看不到,但检查本地安装的Apache,Mysql,PHP都没有问题,重启计算机也不行,我又把服务器上的Weblog全部Copy到本地,还是不行,这下可把我难住了。
由于本地其他使用Mysql的PHP程序是好的,我只好在B2的PHP里面找疑点,一步一步定位到了从数据库执行Sql语句的地方,使用echo把 select语句输出来(PHP的调试手段太差了),大约是SELECT DISTINCT * FROM b2posts WHERE 1=1 AND post_category > 0 ORDER BY post_date DESC LIMIT 5这样的句子,可是select的result却是空,也看不到任何错误信息。
只好将同样的带echo的PHP代码上到服务器上执行,可以正确看到select的结果,这更加证明本地的Sql语句执行出了问题,可我已经很久没有动AMP了呀(Apache,MySql,PHP), 难道它自己会坏掉...
忽然想到phpmyadmin(一个基于PHP的mysql管理程序)里面可以执行Sql语句,或许可以看到一些线索,于是在IE里调出 phpmyadmin,在b2的数据库中执行上面的那个Select语句,果然失败了,并且可以看到错误原因,说"不能创建e:\winnt\temp\ *****.sql"(文件名是一堆随机字符,我记不住了)!
恍然大悟,原来前两天我清理硬盘的时候删除了e:\winnt\temp这个目录(我以为它没有用), 而PHP在执行某些Sql语句时需要用的文件缓存就存放在这里,新建这个temp目录,一切恢复正常。
教训:永远不要删除$WINDIR\temp这个目录!
由于本地其他使用Mysql的PHP程序是好的,我只好在B2的PHP里面找疑点,一步一步定位到了从数据库执行Sql语句的地方,使用echo把 select语句输出来(PHP的调试手段太差了),大约是SELECT DISTINCT * FROM b2posts WHERE 1=1 AND post_category > 0 ORDER BY post_date DESC LIMIT 5这样的句子,可是select的result却是空,也看不到任何错误信息。
只好将同样的带echo的PHP代码上到服务器上执行,可以正确看到select的结果,这更加证明本地的Sql语句执行出了问题,可我已经很久没有动AMP了呀(Apache,MySql,PHP), 难道它自己会坏掉...
忽然想到phpmyadmin(一个基于PHP的mysql管理程序)里面可以执行Sql语句,或许可以看到一些线索,于是在IE里调出 phpmyadmin,在b2的数据库中执行上面的那个Select语句,果然失败了,并且可以看到错误原因,说"不能创建e:\winnt\temp\ *****.sql"(文件名是一堆随机字符,我记不住了)!
恍然大悟,原来前两天我清理硬盘的时候删除了e:\winnt\temp这个目录(我以为它没有用), 而PHP在执行某些Sql语句时需要用的文件缓存就存放在这里,新建这个temp目录,一切恢复正常。
教训:永远不要删除$WINDIR\temp这个目录!
2004/01/12
css/搜索/背景音乐
今天,将当前的这个Skin调整了一下,然后就不幸的发现搜索功能好像出了点问题,搜索的结果不准确了,看起来像是和分页有关,但还没有找到问题出在哪里。
很想象很多网站一样将背景音乐加上,但有两个问题无法解决:
1)声音文件太大了,要达到较好的质量,至少要把mp3压缩到96Kbps,32KHz,或者可以选择64KBps,44KHz的wma,即使是后者也大概需要2M大小的文件(大约对应4分钟的歌曲),由于会在打开页面的时候会自动载入,显然降低页面载入速度。
2)每在页面上做点击,则会重新引发页面重载,这时会重新载入背景音乐,虽然已经在浏览器缓存内,不会耗费时间,但音乐会被重新从头开始播放。有的网站为了解决这个问题,使用框架来解决(使用一个不会变的框架来放入背景音乐),但我很不喜欢框架这种方式。
我的解决方法很简单,重新建一个页面来存放,而在首页上做一个链接。
很想象很多网站一样将背景音乐加上,但有两个问题无法解决:
1)声音文件太大了,要达到较好的质量,至少要把mp3压缩到96Kbps,32KHz,或者可以选择64KBps,44KHz的wma,即使是后者也大概需要2M大小的文件(大约对应4分钟的歌曲),由于会在打开页面的时候会自动载入,显然降低页面载入速度。
2)每在页面上做点击,则会重新引发页面重载,这时会重新载入背景音乐,虽然已经在浏览器缓存内,不会耗费时间,但音乐会被重新从头开始播放。有的网站为了解决这个问题,使用框架来解决(使用一个不会变的框架来放入背景音乐),但我很不喜欢框架这种方式。
我的解决方法很简单,重新建一个页面来存放,而在首页上做一个链接。
订阅:
博文 (Atom)